生成特定类型的词表的简单代码

时间:2015-08-02 19:49:29

标签: python

我需要生成一个单词列表,其中第3个字母表是第4个数字,第5个是字母表。这就是模式。我需要获得该模式的所有可能列表。

示例aaa0a aaa0b ....到zzz9z

我的尝试是

import string
from random import *
password =''.join(choice(string.lowercase) for x in range(3))
password +=choice(string.digits)
password +=choice(string.lowercase)
print password

我知道它最糟糕的代码。我自己也试过了。

我想在文本文件中打印输出,怎么做?

1 个答案:

答案 0 :(得分:2)

from string import ascii_lowercase, digits
from itertools import product, combinations_with_replacement as cr, chain

for p in product(cr(ascii_lowercase,3), digits,ascii_lowercase):
    print("".join(chain.from_iterable(p)))

将其写入文件:

with open("foo.txt", "w") as f:
    f.writelines("".join(chain.from_iterable(p)) + "\n"
                 for p in product(cr(ascii_lowercase, 3), digits, ascii_lowercase))

哪个应该为您提供851761个唯一的行;)