本文介绍了获取一系列列表的笛卡尔积?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从一组列表中获得笛卡尔积(值的所有可能组合)?

How can I get the Cartesian product (every possible combination of values) from a group of lists?

输入:

somelists = [
   [1, 2, 3],
   ['a', 'b'],
   [4, 5]
]

所需的输出:

[(1, 'a', 4), (1, 'a', 5), (1, 'b', 4), (1, 'b', 5), (2, 'a', 4), (2, 'a', 5) ...]

推荐答案

在2.6或更高版本中

import itertools
for element in itertools.product(*somelists):
    print(element)

文档: Python 3-itertools.product

这篇关于获取一系列列表的笛卡尔积?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-18 16:10