示例:
list1 = [0,1,2]
list2 = [0,1]
list3 = [0,1,2,3]
那么排列将是:
0,0,0
0,0,1
0,0,2
0,0,3
0,1,0
0,1,1
0,1,2
0,1,3
1,0,0
1,0,1
1,0,2
1,0,3
1,1,0
1,1,1
1,1,2
1,1,3
...等等,有 3 x 2 x 4 = 24 种排列。
列表的数量不一定是 3(它们可以是任何数字 n),并且顺序很重要,因此 0,0,1 与 0,1,0 不同。
我知道我可能必须以某种方式使用 itertools,但不知道如何解决这个问题。我不能只创建三个嵌套循环,因为列表的数量各不相同。
这是 this question 的变体,但列表的数量各不相同并且顺序很重要。
我感谢任何帮助或提示。谢谢。
最佳答案
list1 = [0,1,2]
list2 = [0,1]
list3 = [0,1,2,3]
listOfLists = [list1,list2,list3]
for list in itertools.product(*listOfLists):
print(list)
关于python - 从 n 个整数列表(可能长度不等)中进行所有可能的 n 长度排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29203566/