我想帶一個列表,例如List = [1,2,2]
,併產生了排列。我可以這樣做:操縱和itertools.permutations的輸出在python
NewList = [list(itertools.permutations(List))]
,輸出是:
[[(1, 2, 2), (1, 2, 2), (2, 1, 2), (2, 2, 1), (2, 1, 2), (2, 2, 1)]]
問題:itertools.permutations
返回其唯一條目列出的所有排列的名單長度爲1的列表。那就是:
NewList[0] == [(1,2,2),(1,2,2),(2,1,2),(2,2,1),(2,1,2),(2,2,1)]
和
NewList[1]
不存在。
我所要的輸出是一個列表,其中每個條目的排列之一。那是
NewList[0] == (1,2,2)
NewList[1] == (1,2,2)
NewList[2] == (2,1,2)
...
NewList[5] == (2,2,1)
問題:有沒有一種命令能夠以這種方式產生List的排列?如果沒有,有沒有辦法訪問[list(itertools.permutations(List))]
的「個別元素」,所以我可以用它們做些事情?
只是刪除了'[]'你已經發布的輸出也是不正確的,它應該是:'[[(1,2,2),(1 (2,2,1),(2,2,1),(2,1,2),(2,2,1)]]] –