Python标准库itertools已经具有您要实现的功能。您也可以在代码中使用它(有趣)。
itertools.combinations(a,3)返回a的所有3个组合。要将其转换为“列表列表”,应使用
.extend()以下方法;
x = ['a','b','c','d','e']n = 3import itertoolspermutations = []combinations = []combinations.extend(itertools.combinations(x,n))permutations.extend(itertools.permutations(x,n))print("Permutations;", permutations)print("n")print("Combinations;", combinations)另外,建议您搜索“ 组合,排列差异 ”。从您的问题中我了解到;排列就是您想要的。(如果运行我共享的代码,您将容易理解两者之间的区别。)



