2014-03-05 59 views

回答

5

最好的办法是使用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

+1 itertools! –

+0

谢谢你,我想再次分裂那个组合,就像(1,2)我想分别得到1和2。有没有最短的方法? – user3064366

+0

@ user3064366你能举个例子解释一下吗?你想输出像'[1,2,1,3,2,3]'? – thefourtheye