在输入中,我有(name, begin, end, step)
形式的范围列表;范围数事先未知。我可以有两个参数范围:
param_ranges = [ ("eye", 0, 5, 1), ("face", 2, 7, 2) ]
或其中三个,等等:
param_ranges = [ ("eye", 0, 5, 1), ("face", 2, 7, 2), ("hair", 3, 10, 3) ]
我需要遍历所有参数组合。在第一个示例中,我应该这样做:
for p1 in range(0, 5, 1):
for p2 in range(2, 7, 2):
# Put eye p1 on face p2
在第二个示例中,我应该这样做:
for p1 in range(0, 5, 1):
for p2 in range(2, 7, 2):
for p3 in range(3, 10, 3):
# Put eye p1 on face p2 with hair p3
我无法预先知道所需的循环次数,因为param_ranges
的长度取决于某些输入。
如何将通用嵌套循环安排在未知的事先需要循环的变量数量上?