使用Python输出多个随机密码

时间:2018-10-19 15:39:00

标签: python passwords

很快,我将需要为用户生成几百个随机密码,我想尽可能地使它自动化。到目前为止,我已经能够为单个输出找到Python密码生成器,但是我希望它能够一次输出一批随机密码。到目前为止,这就是我所拥有的(感谢Stack Overflow社区中的先前评论!)。任何输入将不胜感激。

alphabet = "abcdefghijklmnopqrstuvwxyz"
upperalphabet = alphabet.upper()
pw_len = 8
pwlist = []

for i in range(pw_len//3):
    pwlist.append(alphabet[random.randrange(len(alphabet))])
    pwlist.append(upperalphabet[random.randrange(len(upperalphabet))])
    pwlist.append(str(random.randrange(10)))
for i in range(pw_len-len(pwlist)):
    pwlist.append(alphabet[random.randrange(len(alphabet))])

random.shuffle(pwlist)
pwstring = "".join(pwlist)

for i in range(60):    
    print(pwstring)

1 个答案:

答案 0 :(得分:0)

此代码应该可以很好地满足您的要求:

import secrets
import string

passwords_generator = (string.ascii_letters  
                        + string.digits 
                        + string.punctuation)

for i in range (20):
    password = ''.join(secrets.choice(passwords_generator) for i in range(20))  
    print(password)

您可以找到有关代码 here 的所有必要信息。