Python-清单清单的所有组合

我基本上是在寻找组合的 python版本List<List<int>>

给定一个列表列表,我需要一个新列表,该列表给出列表之间所有可能的项目组合。

[[1,2,3],[4,5,6],[7,8,9,10]] -> [[1,4,7],[1,4,8],...,[3,6,10]]

列表的数量是未知的,因此我需要一些适用于所有情况的列表。奖励积分,尽享优雅!

回答:

你需要itertools.product

>>> import itertools

>>> a = [[1,2,3],[4,5,6],[7,8,9,10]]

>>> list(itertools.product(*a))

[(1, 4, 7), (1, 4, 8), (1, 4, 9), (1, 4, 10), (1, 5, 7), (1, 5, 8), (1, 5, 9), (1, 5, 10), (1, 6, 7), (1, 6, 8), (1, 6, 9), (1, 6, 10), (2, 4, 7), (2, 4, 8), (2, 4, 9), (2, 4, 10), (2, 5, 7), (2, 5, 8), (2, 5, 9), (2, 5, 10), (2, 6, 7), (2, 6, 8), (2, 6, 9), (2, 6, 10), (3, 4, 7), (3, 4, 8), (3, 4, 9), (3, 4, 10), (3, 5, 7), (3, 5, 8), (3, 5, 9), (3, 5, 10), (3, 6, 7), (3, 6, 8), (3, 6, 9), (3, 6, 10)]

以上是 Python-清单清单的所有组合 的全部内容, 来源链接: utcz.com/qa/416862.html

回到顶部