我想在一行list
中为不存在的项目创建一个循环。other_list
像这样的东西:
>>> list = ['a', 'b', 'c', 'd']
>>> other_list = ['a', 'd']
>>> for item in list not in other_list:
... print item
...
b
c
这怎么可能?
我想在一行list
中为不存在的项目创建一个循环。other_list
像这样的东西:
>>> list = ['a', 'b', 'c', 'd']
>>> other_list = ['a', 'd']
>>> for item in list not in other_list:
... print item
...
b
c
这怎么可能?
for item in (i for i in my_list if i not in other_list):
print item
它有点冗长,但同样有效,因为它只呈现下一个循环中的每个下一个元素。
使用 set (这可能比您实际想要做的更多):
for item in set(list)-set(other_list):
print item
第三种选择:for i in filter(lambda x: x not in b, a): print(i)
列表理解是你的朋友
>>> list = ['a', 'b', 'c', 'd']
>>> other_list = ['a', 'd']
>>> [x for x in list if x not in other_list]
['b', 'c']
也不要将事物命名为“列表”