Python:使用for循环比较列表中的项目

时间:2011-12-04 20:30:48

标签: python list loops for-loop comparison

我正在尝试比较一对列表并查看两个列表中是否有任何相同的项目,但是每次运行时它看起来都缺少一个项目。

for item in alp: 
   for item2 in numbers: 
      if type((pos_ans[str(item) + str(item2)])) != int: 
         for item3 in (pos_ans[str(item) + str(item2)]): 
            if item3 in listing[item + "l"]: 
               (pos_ans[str(item) + str(item2)]).remove(item3)

pos_ans[str(item) + str(item2)]是一个列表,listing[item + "l"]是另一个列表。 它通常工作正常,但有时会错过一两件物品。

2 个答案:

答案 0 :(得分:1)

虽然没有更多的上下文很难确切地说出来,但如果它们确实是同一个对象 - 将对象放入set s然后在它们之间调用intersect以查看重叠的地方。

答案 1 :(得分:0)

在不查看代码的情况下,我只能假设您的If语句之一正在使列表项无法计算。主要是if type((pos_ans[str(item) + str(item2)])) != int:

两个列表是否可能在同一个地方都有整数?

相关问题