使用for循环比较列表的位置

1 python loops for-loop position list

如果有两个列表:

a = [1,2,3,4,5]
b = [2,1,3,5,4]
Run Code Online (Sandbox Code Playgroud)

我想使用for循环来比较它们,我必须使用for循环,所以不要问为什么,我在想:

for q,w in zip(a,b):
    if a[q] == a[w]:
        print "hi"
    else:
        print "bye"
Run Code Online (Sandbox Code Playgroud)

我正在寻找的结果是这样的:

再见再见再见

它如何实现这一结果?

小智 6

从你的例子看,你是在正确的轨道上.但我认为你误解了q和w代表什么.

在您的示例中,q和w不代表您循环的集合的当前元素的索引; 他们元素.因此,例如,在该循环的第一次迭代中,q和w分别为1和2.这是你可能想要的:

for q,w in zip(a,b):
    if q == w:
        print "hi"
    else:
        print "bye"
Run Code Online (Sandbox Code Playgroud)