【发布时间】:2021-12-25 23:32:52
【问题描述】:
我试图弄清楚如何迭代任意数量的循环,其中每个循环都依赖于最近的外部循环。以下代码是我想要做的一个例子:
def function(z):
n = int(log(z))
tupes = []
for i_1 in range(1, n):
for i_2 in range(1, i_1):
...
...
...
for i_n in range(1, i_{n - 1}):
if i_1*i_2*...*i_n > z:
tupes.append((i_1, i_2,..., i_n))
return tupes
虽然我希望它适用于任何z > e**2,但它足以适用于zs 至e**100。我知道,如果我采用适当的ranges 的笛卡尔积,我最终会得到我想要的元组的超集,但我只想获得我寻找的元组。
如果有人能帮我解决这个问题,我将不胜感激。提前致谢。
【问题讨论】:
-
使用函数和递归。