【发布时间】:2011-01-28 02:50:00
【问题描述】:
假设我有两个不同大小的列表
a = [1, 2, 3]
b = ['a', 'b']
从a 的一个元素和b 的一个元素的所有可能组合中获取元组c 的列表的Pythonic 方法是什么?
>>> print c
[(1, 'a'), (1, 'b'), (2, 'a'), (2, 'b'), (3, 'a'), (3, 'b')]
c 中元素的顺序无关紧要。
具有两个for 循环的解决方案是微不足道的,但它似乎不是特别Pythonic。
【问题讨论】:
-
@Nathan Fellman - 实际上,这些都不是重复的。请在投票结束前仔细阅读。
-
我一定错过了差异。这是因为列表长度不同而不同吗?
-
@Nathan Fellman,不仅如此,而且
zip返回(a[0], b[0])、(a[1], b[1])等的元组。我想要a和b元素的所有可能组合的元组. -
@danben,你说得对。我很抱歉。