Python中具有多个条件的For循环

Python中具有多个条件的For循环,python,for-loop,python-2.x,Python,For Loop,Python 2.x,我有3个大小相同的列表(列表1、2和3)。我希望遍历列表并对每个项执行操作。像 for x in List1, y in List2, z in List3: if(x == "X" or x =="x"): //Do operations on y elif(y=="Y" or y=="y"): //Do operations on x,z 所以我只想遍历列表中的“列表长度1或2或大小”,然后对x、y和z执行操作。如何使用Python实现这

我有3个大小相同的列表(列表1、2和3)。我希望遍历列表并对每个项执行操作。像

for x in List1, y in List2, z in List3:
    if(x == "X" or x =="x"):
         //Do operations on y
    elif(y=="Y" or y=="y"):
         //Do operations on x,z
所以我只想遍历列表中的“列表长度1或2或大小”,然后对x、y和z执行操作。如何使用Python实现这一点

编辑:Python版本2.6.6

import itertools
for x, y, z in itertools.izip(List1, List2, List3):
    # ...

或者在Python3中使用
zip

@wim:如果您想多次使用压缩列表,那就太好了。如果您只想迭代一次,最好使用迭代器/视图。但是我使用的是Python 2.6.6,并且没有定义itertools。
itertools
包含在Python 2.6中,您只需要导入它。现在我明白了GvR为什么不想在语言中使用map、reduce等/@karl knechter,顺便问一下,替换
reduce
的首选方法是什么?我认为您应该明确地编写for循环。请注意,我没有说我同意
>>> map(lambda x, y, z: (x, y, z), range(0, 3), range(3, 6), range(6, 9))
[(0, 3, 6), (1, 4, 7), (2, 5, 8)]