关于排列和/或组合的问题

Question about permutations and or combinations

在给定的值列表中,我想获得给定长度的所有组合,例如:

given_list = [a,b]
given_lenght_of_combinations = 3

预期输出:

a,a,a
a,a,b
a,b,a
a,b,b
b,a,a
.
.
.
b,b,b
b,b,a
b,a,b
b,a,a
  .
  .
  .

我尝试了 itertools 的排列和组合,但无法正常工作。

有人可以帮忙吗?

这不是排列或组合——它是笛卡尔积。幸运的是,在 itertools 中仍然有办法做到这一点:product.

itertools.product(given_list, repeat=given_length_of_combinations)