我试图解决中提到的问题这篇文章 。 考虑D=[d1,...,dm]
一个非负整数的列表。 我想有集的笛卡尔积的range(d1),...,range(dm)
例如,如果m=3
我可以使用itertools:
indices=[i for i in itertools.product(range(d1),range(d2),range(d3))]
我将不胜感激,如果你能帮助我知道我可以生成indices
使用D
任意长度。
我试图解决中提到的问题这篇文章 。 考虑D=[d1,...,dm]
一个非负整数的列表。 我想有集的笛卡尔积的range(d1),...,range(dm)
例如,如果m=3
我可以使用itertools:
indices=[i for i in itertools.product(range(d1),range(d2),range(d3))]
我将不胜感激,如果你能帮助我知道我可以生成indices
使用D
任意长度。
您可以使用map
绘制的所有项目D
到range
,然后解压它们的product
:
indices=list(itertools.product(*map(range, D)))
您可以使用*
此:
[i for i in itertools.product(*map(range, D))]