python - 如何从给定的 k 个字符中创建 n 个字符系列的所有组合的数组

python - how to create an array of all combinations of n character series out of k given characters

我正在尝试找到一种方法来创建一个数组,在该数组中,我将使用一组字符进行所有变体

给定 A B C,我想要所有可能的 n 元素组合
例如

A A A B B
A B C A A
A B C A B
A B C B A
etc.

有什么函数可以给我这样的东西吗? 我查看了 print list(itertools.permutations('ABC',5)) 但它似乎不起作用,因为 5 大于给定字符的数量。

我相信你要找的是product:

list(product('ABC', repeat=5))

输出:

[('A', 'A', 'A', 'A', 'A'),
 ('A', 'A', 'A', 'A', 'B'),
 ('A', 'A', 'A', 'A', 'C'),
 ('A', 'A', 'A', 'B', 'A'),
 ('A', 'A', 'A', 'B', 'B'),
 ('A', 'A', 'A', 'B', 'C'),
 ('A', 'A', 'A', 'C', 'A'),
 ('A', 'A', 'A', 'C', 'B'),
 ...