首页 > 解决方案 > 列表中的迭代迭代

问题描述

假设我有 2 个列表和一个变量:

Name = "Siler City"
List1 = ["Frank", "Beth", "Jose" "Pieter"]
List2 = ["Red", "Green", "Blue", "Purple"]

这是一个复杂问题的简单说明,我不想创建字典是有原因的。这些必须是 2 个单独的列表。我想要的是同时遍历 List1[0] 和 List2[0] 等。所以我想要的结果是

“红房子归弗兰克所有”、“绿房子归贝丝所有”、“蓝房子归何塞所有”

等等...为什么下面的方法不起作用,什么是更好的策略?

for item in List1:
    if Name == "Siler City":
        for color in List2:
            print("The {} house is owned by {}".format(color, item))

标签: pythonlistif-statementpython-3.6nested-lists

解决方案


您可以将列表压缩在一起以遍历两者

for list1_elm, list2_elm in zip(List1, List2):
  pass # Remove pass when you add your print statement
  # Do things Here

推荐阅读