我是python的初学者,我正在尝试编写一个包含两个列表的函数, 并且对于第一个列表中的每个项目,查看第二个列表,并比较每个列表 第一个列表中的项目,第二个列表中的每个项目。它需要返回一个包含all的新列表 未出现在第一个列表中的项目。
例如,给出一个列表:
list1 = ['yellow', 'blue', 'green']
和第二个清单:
list2 = ['orange', 'green', 'blue', 'pink', 'yellow']
它应该只返回list2中不在list1中的项的列表,如下所示:
['orange', 'pink']
我写了很多函数,但是他们不断返回重复项,我真的很感激任何帮助!
def different_colors(list1, list2):
newlist = []
for color in list1:
newlist = []
for color2 in list2:
if color1 != color2:
newlist.append(color2)
return newlist
答案 0 :(得分:1)
使用列表理解:
[k for k in dictionary.keys() if k not in listt]
答案 1 :(得分:1)
我会使用Python集。
>>> list1 = ['yellow', 'blue', 'green']
>>> list2 = ['orange', 'green', 'blue', 'pink', 'yellow']
>>> list(set(list2).difference(set(list1)))
['orange', 'pink']
Python sets是关于操纵独特元素的集合。他们为此目的有特定的方法。