Python - 获取一组字符列表的每个排列列表

时间:2011-12-28 04:16:53

标签: python

我有一个包含7个字符的列表。我将如何以编程方式创建洗牌字母的每个排列(我知道列表的数量将是7阶乘)。

我知道如何对列表进行洗牌,但我认为只是保持列表的混乱,然后检查我是否已经创建了这种排列并继续直到我达到了可能性的数量。 / p>

2 个答案:

答案 0 :(得分:7)

使用itertools.permutations

>>> list(itertools.permutations("abc"))
[('a', 'b', 'c'), ('a', 'c', 'b'), ('b', 'a', 'c'), ('b', 'c', 'a'), ('c', 'a', 'b'), ('c', 'b', 'a')]

答案 1 :(得分:1)

您无法使用permutations模块中的itertools功能吗?