【发布时间】:2021-05-10 22:48:34
【问题描述】:
我正在尝试创建一个密码列表,其中包含以下格式的所有组合:
3 个字符 2 个数字 3 个字符
例如:aaa00aaabbb11bbb
我创建了一个代码,它使用较小的字符数组,但是当我尝试使用 ASCII 系统中的所有字符时,代码会出现内存错误。
import string
numbers = ["0","1","2","3","4","5","6","7","8","9"]
characters = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
characterCombs = []
numbCombs = []
allCombs = []
for el1 in characters:
for el2 in characters:
for el3 in characters:
characterCombs.append(el1+el2+el3)
for n1 in numbers:
for n2 in numbers:
numbCombs.append(n1 + n2)
for ch1 in characterCombs:
for no in numbCombs:
for ch2 in characterCombs:
allCombs.append(ch1+no+ch2)
for i in allCombs:
f.write(i+"\n")
f.close()
有没有办法优化这段代码,或者我应该改变我的方法并找到不同的方法来组合所有这些字符?
【问题讨论】:
标签: python python-3.x passwords combinations