小编典典

查找不在列表中的元素

python

所以这是我的代码:

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包含一个整数列表。我想比较itemz并打印出不在的数字z相比时item

z当不能比较时,我可以打印其中的元素item,但是当我尝试使用上面的代码进行相反操作时,则什么也不会打印。

有什么帮助吗?


阅读 172

收藏
2020-12-20

共1个答案

小编典典

您的代码没有按照我认为的方式执行。该行将for item in z:遍历z,每次item等于的一个元素zitem因此,在执行任何操作之前,原始列表将被覆盖。

我想你想要这样的东西:

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)
2020-12-20