-7

产品在 python 中做了什么?怎么能被替换?它的能力是什么。标志有什么作用*?如何在不收到生成器警告消息的情况下对其进行测试

<itertools.product object at 0x0159BD00>
4

3 回答 3

5

它计算任意数量的可迭代对象的笛卡尔积。来源

因此,如果您有两个类似[1,2]and的列表[3,4],则笛卡尔积是(1,3),(1,4),(2,3),(2,4)

于 2012-06-08T20:46:23.430 回答
2

尝试迭代它:

for p in itertools.product((1,2,3), (4,5,6)):
    print p

产生:

(1, 4)
(1, 5)
(1, 6)
(2, 4)
(2, 5)
(2, 6)
(3, 4)
(3, 5)
(3, 6)
于 2012-06-08T20:47:07.403 回答
1

你检查过 Python itertools.product 文档吗?它计算笛卡尔积:

itertools.product(*iterables[, repeat]) 输入迭代的笛卡尔积。

等效于生成器表达式中的嵌套 for 循环。例如,product(A, B) 返回与 ((x,y) for x in A for y in B) 相同的结果。

您对此有什么具体问题吗?

于 2012-06-08T20:46:53.267 回答