是使用递归或者使用函数式编程中的高阶函数。这些方法可以帮助简化代码并提高可读性。
def nested_for_loop(n, loops, current_loop=[]):
if n == 0:
# 执行循环体的操作
print(current_loop)
else:
for i in range(loops[n-1]):
nested_for_loop(n-1, loops, current_loop + [i])
# 示例调用
nested_for_loop(3, [2, 3, 4])
在上述示例中,nested_for_loop
函数接受两个参数:n
表示嵌套循环的层数,loops
表示每个循环的迭代次数。通过递归调用自身,每次循环都会将当前迭代的值添加到current_loop
列表中,并在达到指定的层数时执行循环体的操作。
from itertools import product
def nested_for_loop(loops):
for combination in product(*loops):
# 执行循环体的操作
print(combination)
# 示例调用
nested_for_loop([[2, 3, 4], [5, 6, 7], [8, 9, 10]])
在上述示例中,nested_for_loop
函数接受一个列表loops
,其中每个元素表示一个循环的迭代次数。通过使用itertools
模块中的product
函数,可以将多个循环的迭代次数组合在一起,然后通过遍历这些组合来执行循环体的操作。
这两种方法都可以简化多个嵌套for循环的执行,并且提供了更灵活和可读性更高的代码实现方式。
领取专属 10元无门槛券
手把手带您无忧上云