我想从列表中创建所有可能的字符组合。第一个char需要来自第一个数组,第二个char需要来自第二个数组,等等。
如果我有以下清单:
char1 = ['a','b','c']
char2 = ['1','2']
可能的字符串是:a1,a2,b1,b2,c1和c2。 如何使用未知大小的未知数量的列表制作所有组合?
问题在于我不知道会有多少个列表。当代码正在运行时,列表的数量将由用户决定。
答案 0 :(得分:0)
如上所述,您可以使用itertools.product()
由于你不知道列表的数量,你可以将列表列表作为参数传递:
import itertools
lists = [
['a','b','c'],
['1','2']
]
["".join(x) for x in itertools.product(*lists)]
结果:
['a1', 'a2', 'b1', 'b2', 'c1', 'c2']