1
我有一个列表L = [1,2,3]。什么是得到列表和输出2个元素的所有可能的独特组合,迭代的方式应该得到这样的最佳方式:如何从python列表中获取元素的组合?
1日ITE = 1 2,第2伊特= 1 3和第3 ITE = 2 3
谢谢
我有一个列表L = [1,2,3]。什么是得到列表和输出2个元素的所有可能的独特组合,迭代的方式应该得到这样的最佳方式:如何从python列表中获取元素的组合?
1日ITE = 1 2,第2伊特= 1 3和第3 ITE = 2 3
谢谢
最好的办法是使用itertools.combinations
,这样
from itertools import combinations
print [item for item in combinations(L, r = 2)]
# [(1, 2), (1, 3), (2, 3)]
可以遍历像这样
for item in combinations(L, r = 2):
print item
# (1, 2)
# (1, 3)
# (2, 3)
或者您也可以访问单个元素这样
for item in combinations(L, r = 2):
print item[0], item[1]
+1 itertools! –
谢谢你,我想再次分裂那个组合,就像(1,2)我想分别得到1和2。有没有最短的方法? – user3064366
@ user3064366你能举个例子解释一下吗?你想输出像'[1,2,1,3,2,3]'? – thefourtheye