<分区>
假设我有一个包含 n 个列表的列表。有没有一种巧妙的方法来获得那些长度为 n 的列表的所有可能组合,每个元素保持它的位置。
这是一个例子:
lists=[[1],[2,3],[4,5]]
输出:
[[1,2,4],
[1,3,4],
[1,2,5],
[1,3,5]]
<分区>
假设我有一个包含 n 个列表的列表。有没有一种巧妙的方法来获得那些长度为 n 的列表的所有可能组合,每个元素保持它的位置。
这是一个例子:
lists=[[1],[2,3],[4,5]]
输出:
[[1,2,4],
[1,3,4],
[1,2,5],
[1,3,5]]
最佳答案
您可以使用 itertools.product
为此:
>>> import itertools
>>> lists = [[1], [2, 3], [4, 5]]
>>> list(itertools.product(*lists))
[(1, 2, 4), (1, 2, 5), (1, 3, 4), (1, 3, 5)]
关于python - 列表列表 : find combinations of elements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12805944/