本人尝试生成2位的字典,组合共3844个,每增加一位算力都会成倍的增加,所以一般情况下以6位字母加数字组合的密码生成字典估计也得大半天(也可能不止)。直接上代码供参考学习。
import string
import itertools
num = string.digits + string.ascii_letters #digits代表0-9的数字,ascii_letters代码52个英文大小写字母,当然还有一些特殊字符使用string.punctuation,当然也可以自定义需要的字符
x = int(input("请输入要生成的密码长度:"))
r = itertools.product(num,repeat=x)
dic = open('D:\\password.txt','w')
a=0
for i in r:
dic.write(''.join(i)+"\n")
a=a+1
print(i)
dic.close()
print('生成完毕!当前生成'+str(a)+"个密码")