我想创建一个嵌套for
循环,该循环使用一系列整数作为循环范围,如下所示:
a = [5,4,7,2,7,3,8,3,8,9,3,2,1,5]
for i in range(a[0]):
for j in range(a[1]):
for k in range(a[2]):
for l in range(a[3]):
...
...
...
do_some_function()
有没有一种方法可以自动完成?
答案 0 :(得分:2)
您将可以使用以下方法迭代列表范围的排列
for items in itertools.permutations(range(item) for item in a):
items
将包含每个范围中只有一项的序列。
注意:该方法非常耗时和耗资源。考虑一下您的问题所基于的概念是否可以优化可能是一个很好的选择。