Python:生成一个包含多个列表中列表的列表

I L*_*hon 0 python

我有以下列表:

[1,2,3]
[1]
[1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

从上面,我想生成一个包含以下内容的列表:

[[1,1,1],[1,1,2],[1,1,3],[1,1,4],
[2,1,1], [2,1,2], [2,1,3], [2,1,4],
[3,1,2], [3,1,3],[3,1,4]]
Run Code Online (Sandbox Code Playgroud)

这个过程叫什么?

生成一个pyial列表的阶乘?

是否有内置库可以执行此操作?

fal*_*tru 5

使用itertools.product:

>>> import itertools
>>> [list(xs) for xs in itertools.product([1,2,3], [1], [1,2,3,4])]
[[1, 1, 1], [1, 1, 2], [1, 1, 3], [1, 1, 4], [2, 1, 1], [2, 1, 2], [2, 1, 3], [2, 1, 4], [3, 1, 1], [3, 1, 2], [3, 1, 3], [3, 1, 4]]
Run Code Online (Sandbox Code Playgroud)