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