Ton*_*nen 1 python combinations dictionary cpu-word
我列出了可能的单词来制作给定单词的字谜.每个列表的字符串都是字典的关键,并且具有一个或多个单词的值.哪种是最好的(最快的,pythonic)方法,按照字典中相应键的每个列表中的单词的键的顺序来制作所有可能的句子.列表中包含可变数量的键.
keylist = ['key1', 'key2', 'key3']
worddict = {'key1': ['a','b','c'], 'key2':['d','e','f'], 'key3':['g','h','i']}
Run Code Online (Sandbox Code Playgroud)
预期结果(第一个键列表中的第一个单词,第二个键列表中的第二个单词,依此类推):
["a d g",
"a d h",
"a d i",
.....
"c f i"]
Run Code Online (Sandbox Code Playgroud)
使用itertools模块中的product函数生成迭代的所有组合
import itertools
for sentence in itertools.product(['a','b','c'], ['d','e','f'], ['g','h','i']):
print sentence
Run Code Online (Sandbox Code Playgroud)
输出将是元组,但如果需要,可以很容易地将它们转换为字符串或列表.