Itertools.product
-
product(a,b): 返回两个集合
a
,b
中元素的笛卡尔乘积。 -
笛卡尔乘积
:
A={a,b}, B={0,1,2}A×B = {(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}
B×A = {(0, a), (0, b), (1, a), (1, b), (2, a), (2, b)}由此可以看到可用在循环的嵌套当中
-
product(*args):
接收若干个位置参数,转换成元组tuple形式 -
示例:
list = [10,2],[23,45],[1, 3]
from itertools import product
for a,b,c in product(*list):
print(a, b, c)
for i, j, k in product([10,2],[23,45],[1, 3]):
print(i, j, k)
>>> 10 23 1
10 23 3
10 45 1
10 45 3
2 23 1
2 23 3
2 45 1
2 45 3