Itertools.product(*args, **kargs)
我看到该产品可以获得许多参数。像
a = [1,2]
b = [3,4]
and I can itertools.product(a,b,a,b,a,b....)
我想要做的是在一个结构中收集所有参数。 因为我可能不知道有多少套我需要计算产品。
但是
itertools.product([a,b,a,b])
不起作用。
那么,我该怎么做呢?
答案 0 :(得分:4)
只需使用itertools.product(*[a, b, a, b])
解压缩列表。
In [1]: a = [1, 2]
In [2]: b = [3, 4]
In [3]: from itertools import product
In [4]: list(product(a, b, a, b))
Out[4]:
[(1, 3, 1, 3),
(1, 3, 1, 4),
(1, 3, 2, 3),
(1, 3, 2, 4),
...]
In [5]: test_list = [a, b, a, b]
In [6]: list(product(*test_list))
Out[6]:
[(1, 3, 1, 3),
(1, 3, 1, 4),
(1, 3, 2, 3),
(1, 3, 2, 4),
...]