如何在未知数量的参数范围内嵌套循环?

时间:2019-08-29 16:51:58

标签: python loops

在输入中,我有(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的长度取决于某些输入。

如何将通用嵌套循环安排在未知的事先需要循环的变量数量上?

0 个答案:

没有答案