如何根据其他列表从python中的列表中删除项目

时间:2012-11-09 06:59:34

标签: python django

我有

list1 = [var1,var2,var3,var4,var5]

和其他

list2 = [var4, var2]

现在我想减去它们,以便最终结果是

list1 = [var1,var3,var5]

3 个答案:

答案 0 :(得分:4)

以这种方式使用列表理解:

l1 = [var1,var2,var3,var4,var5]
l2 = [var4, var2]

diff = [x for x in l1 if x not in l2]

答案 1 :(得分:3)

Assumin列表没有重复的项目,

list(set(list1)-set(list2))

答案 2 :(得分:0)

您可以将您的列表转换为集合并获得它们之间的差异

list1 = [1,2,3,4]
list2 = [1, 3]
list1 = set(list1)
list2 = set(list2)
list1.difference(list2)
OUTPUT: set([2, 4])