Python itertools.product 具有可变数量的参数
Posted
技术标签:
【中文标题】Python itertools.product 具有可变数量的参数【英文标题】:Python itertools.product with variable number of arguments 【发布时间】:2012-04-13 21:56:11 【问题描述】:我正在尝试编写一个模块来使用 itertools.product 组合可变数量的列表。
我能得到的最接近的是:
import itertools
lists = [["item1","item2"],["A","b","C"], ["etc..."]]
searchterms = list(itertools.product(lists))
print searchterms
这不起作用,因为lists是一个单一的列表,所以它只返回原始序列。但我不知道如何将列表变量的每个元素传递给 itertools。
感谢您的任何建议。
【问题讨论】:
【参考方案1】:您需要使用*
将单个列表分成其组成列表:
searchterms = list(itertools.product(*lists))
请参阅Unpacking Argument Lists 上的 Python 教程部分。
【讨论】:
谢谢!我在哪里可以找到有关 *var 的文档?以上是关于Python itertools.product 具有可变数量的参数的主要内容,如果未能解决你的问题,请参考以下文章
Python itertools.product 具有任意数量的集合
Python itertools.product 具有可变数量的参数
Python itertools.product 重新排序生成
Python小技巧:使用*解包和itertools.product()求笛卡尔积(转)