Python|生成给定长度的随机字符串
生成随机数的问题很常见,但有时,我们的应用程序需要我们更好地处理并提供一些功能,为密码等应用程序生成随机数字和字母字符串。让我们讨论可以执行此操作的某些方式。
方法 #1:使用random.choices()
random 模块的这个函数可以帮助我们完成这个任务,并提供一个单一的替代方案来替代这个特定任务可能需要的整个循环。适用于Python > v3.6 。
# Python3 code to demonstrate
# generating random strings
# using random.choices()
import string
import random
# initializing size of string
N = 7
# using random.choices()
# generating random strings
res = ''.join(random.choices(string.ascii_uppercase +
string.digits, k = N))
# print result
print("The generated random string : " + str(res))
输出 :
The generated random string : 0D5YE91
方法 #2:使用secrets.choice()
对于密码学上更安全的随机数,可以使用秘密模块的这个函数,因为它的内部算法以一种生成不太可预测的随机数的方式构建。适用于Python > v3.6 。
# Python3 code to demonstrate
# generating random strings
# using secrets.choice()
import secrets
import string
# initializing size of string
N = 7
# using random.choices()
# generating random strings
res = ''.join(secrets.choice(string.ascii_uppercase + string.digits)
for i in range(N))
# print result
print("The generated random string : " + str(res))
输出 :
The generated random string : T7HPKVR