所以这是我的代码:
item = [0,1,2,3,4,5,6,7,8,9] z = [] # list of integers for item in z: if item not in z: print item
z包含一个整数列表。我想比较item于z并打印出不在的数字z相比时item。
z
item
z当不能比较时,我可以打印其中的元素item,但是当我尝试使用上面的代码进行相反操作时,则什么也不会打印。
有什么帮助吗?
您的代码没有按照我认为的方式执行。该行将for item in z:遍历z,每次item等于的一个元素z。item因此,在执行任何操作之前,原始列表将被覆盖。
for item in z:
我想你想要这样的东西:
item = [0,1,2,3,4,5,6,7,8,9] for element in item: if element not in z: print element
但是您可以轻松地执行以下操作:
[x for x in item if x not in z]
或(如果您不介意丢失非唯一元素的重复项):
set(item) - set(z)