我试图解决中提到的问题这篇文章。考虑D=[d1,...,dm]
一个非负整数列表。我想要一套的笛卡尔积range(d1),...,range(dm)
。例如,如果m=3
我可以使用itertools:
indices=[i for i in itertools.product(range(d1),range(d2),range(d3))]
如果您能帮助我知道如何生成任意长度的indices
using D
,我将不胜感激。
您可以使用map
映射的所有项目D
来range
,然后解开他们product
:
indices=list(itertools.product(*map(range, D)))
问题内容: 我正在尝试编写一些代码来测试一堆输入参数的笛卡尔积。 我看过了,但是它的功能并不是我想要的。有没有一种简单明了的方法来获取一个字典,每个字典中包含任意数量的键 和 每个值中任意数量的元素,然后生成具有下一个排列的字典? 输入: 输出示例: 问题答案: 好的,感谢@dfan告诉我我在错误的位置查看。我现在知道了: 编辑 :经过多年的Python经验,我认为一个更好的解决方案是接受输入,而
问题内容: 如何从一组列表中获得笛卡尔积(值的所有可能组合)? 输入: 所需的输出: 问题答案: 在Python 2.6+中
问题内容: 以下代码适用于,它是否也返回重复的笛卡尔积,如果是,如何获得唯一的笛卡尔积? 当我传递包含列表的列表时,这似乎也不起作用 问题答案: 要仅获取唯一元素,可以使用这样的set表示法( 注意: 这不能保证顺序) 或根据Paul Draper的评论,我们可以像这样 如果您也想维护订单 要使您的程序可以使用列表列表,只需将函数声明从 至
我正在尝试对一个后端服务器进行负载测试,并将一些配置解析到一个标签对象中。我正在尝试生成< code>Label对象的笛卡尔乘积,这将是一个< code>Metric对象。 我有一个 方法添加 我试图以迭代/递归的方式做到这一点,但它变得非常复杂和混乱。我检查了是否有java8替代方案。如果我能够获得
现在有这几个数据 要转换成
假设我有几个,我会将它们放入另一个列表或其他集合中,所以在调用之前,我不知道我有多少个 应该是: