在python上,我可以使用combinations
中的itertools
函数来获取列表中所有可能的对。但有没有办法让所有组合在一个列表中占一个元素而在另一个列表中占用另一个元素?
l1 = [1,2,3]
l2 = [4,5]
是否有可以返回的功能
(1,4),(1,5),(2,4),(2,5),(3,4),(3,5)
答案 0 :(得分:3)
您正在寻找"笛卡尔产品":
itertools.product(list1, list2, ...)
from itertools import product
l1 = [1,2,3]
l2 = [4,5]
>>> print list(product(l1, l2))
[(1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5)]