我希望能够在 python 中生成二维数组的所有唯一排列。
例如拿这个二维数组
[[1,1],[0,0]]
我想回来
[[0,0],
[1,1]]
[[0,1],
[0,1]]
[[0,1]
[1,0]]
[[1,0]
[0,1]]
[[1,0]
[1,0]]
[[1,1]
[0,0]]
最佳答案
你可以这样做
d = [[1, 1], [0, 0]]
from itertools import permutations, chain
from pprint import pprint
pprint(sorted([i[:2], i[2:]] for i in set(permutations(chain.from_iterable(d)))))
输出
[[[0, 0], [1, 1]],
[[0, 1], [0, 1]],
[[0, 1], [1, 0]],
[[1, 0], [0, 1]],
[[1, 0], [1, 0]],
[[1, 1], [0, 0]]]
关于python - 生成二维数组的所有唯一排列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21959530/