如何在Python中生成平展的列表列表的所有排列,...以便保持列表中的顺序?
示例;
输入;
[[1,2], [3]]
输出;
[1,2,3]
[1,3,2]
[3,1,2]
1在排列中总是在2之前。
这里是可能的解决方案:
import itertools
lst = [[1,2], [3]]
permutations = list(itertools.permutations(set(itertools.chain(*lst))))
排列可能很多,因此您应该使用生成器而不是列表。