Python:如何获得子集的排列列表?

时间:2013-04-17 00:27:07

标签: python permutation combinations

假设我有以下列表:

L = [1, 2, 3]

我想获得以下输出:

[[1], [2],[3]]
[[1], [2, 3]]
[[2], [1, 3]]
[[3], [1, 2]]

除非我不确定我是否正确地表达了这个问题。它基本上就像非重复的排列组一样?

1 个答案:

答案 0 :(得分:-1)

我不清楚你是如何得到你的输出的(另一个例子或更好的描述可能有帮助),但答案可能在于itertools,其中包含许多工具来处理组合和排列:

>>> data = [1, 2, 3]
>>> list(zip(reversed(data), itertools.combinations(data, 2)))
[(3, (1, 2)), (2, (1, 3)), (1, (2, 3))]