生成 n 个集合的笛卡尔积

0 python variables permutation

给定每个变量的域,如何生成 n 个变量的排列。(在蟒蛇中)

我知道 itertools,但这需要一个固定的排列域,因此不起作用。还有一个python库可以做到这一点吗?谢谢。

基本上:给定 3 个变量:A 与域 (2,3) B 与域 (1) C 与域 (1,2,3)

你如何生成 ABC 的所有排列?

2,1,1
3,1,1
2,1,2
3,1,2
2,1,3
3,1,3
Run Code Online (Sandbox Code Playgroud)

Ste*_*ann 5

>>> list(itertools.product((2, 3), (1,), (1, 2, 3)))
[(2, 1, 1), (2, 1, 2), (2, 1, 3), (3, 1, 1), (3, 1, 2), (3, 1, 3)]
Run Code Online (Sandbox Code Playgroud)