Perl 中的 Python itertools.product() 等价物

标签 python perl python-itertools

在 Python 中,我可以使用 itertools.product(),文档中说它是“笛卡尔积,相当于嵌套的 for 循环”。

它在 Perl 中的等价物是什么?

Python 中的示例:

import itertools
opts_list = [["A","B"], ["C","D","E"], ["F","G"]]
print list(itertools.product(*opts_list))

给予:

[('A', 'C', 'F'), ('A', 'C', 'G'), ('A', 'D', 'F'), ('A', 'D', 'G'), ('A', 'E', 'F'), ('A', 'E', 'G'), ('B', 'C', 'F'), ('B', 'C', 'G'), ('B', 'D', 'F'), ('B', 'D', 'G'), ('B', 'E', 'F'), ('B', 'E', 'G')]

最佳答案

我最终使用了:

use Math::Cartesian::Product;
cartesian {print "@_\n"} ["A","B"], ["C", "D", "E"], ["F", "G"];

关于Perl 中的 Python itertools.product() 等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29215233/

相关文章:

perl - 使用对称加密的Perl中的安全非篡改URL组件?

python - 没有替换的列表元素的每个组合

python itertools组合逻辑

python - 我可以用什么代替 python 2.4 中的 next()

python - 根据某些列名称对不同数据帧中的列求和

python - Pygal SolidGuage - 更改标签字体大小

xml - 如何使用 Perl 将生成的文本文件转换为 Junit 格式(XML)

linux - 在 Perl 脚本中使用 Bash 环境变量?

python - 使用 Python 打印到 CSV 文件

python - Django 中不区分大小写的查询集排序