在python中迭代未知数量的嵌套循环

2024-05-19 15:05:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有很多用户定义的列表,每个都包含单词。例如,可能有以下三个列表:

list1 = ["THE", "A"]
list2 = ["ELEPHANT", "APPLE", "CAR"]
list3 = ["WALKED", "DROVE", "SAT"]

我想要的是遍历每个列表中的每个组合,对照已知单词的字典检查每个组合,看看哪个单词组最像字典。这意味着迭代将如下:

[
    "THE ELEPHANT WALKED",
    "THE APPLE WALKED",
    "THE CAR WALKED",
    "THE ELEPHANT DROVE",
    "THE APPLE DROVE",
    "THE CAR DROVE",
    # ...
    "A CAR SAT",
]

问题是可以有任意数量的列表,并且每个列表可以包含可变数量的项。我知道递归可以用于此,但我需要一个没有递归的解决方案。我一直面临的问题是,列表的数量可能是可变的,否则我只会写:

for a in list1:
    for b in list2:
        for c in list3:
            ...

但我不知道该停在哪里。。。


Tags: theinapple列表for数量单词car