我有一個列表:Python列表組合
nums = [1, 2, 3, 4]
我想獲得一切準備分裂名單1 - 3
:
[
(1, (2, 3, 4)),
(2, (1, 3, 4)),
(3, (1, 2, 4)),
(4, (1, 2 ,3))
]
現在我能找到的最好的是使用itertools.combinations(num, 3)
,但它只會給每個項目的第二部分,這意味着[(1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]
。有其他方法可以使用嗎?
好回答..... – himanshu
不錯的做法,但如果有'nums'中有重複的值將不會工作。對於更通用的解決方案,請使用'enumerate'並比較索引。 –
@Shawn,這是我想到的事情之一,當它說或多或少容易:)我已經添加了一個'枚舉'的例子,但它看起來並不漂亮。可以簡化嗎? –