我正在尝试找到一种方法来使用一个列表来过滤掉另一个列表的元素。
有点像intersect语法,但恰恰相反
lst = [0,1,2,6]
secondlst = [0,1,2,3,4,5,6]预期结果
[3,4,5]发布于 2011-11-23 14:13:10
简单的方法:
r = [v for v in secondlst if v not in lst]或
list(set(secondlst).difference(lst))发布于 2011-11-23 14:26:50
您可以使用filter
filter(lambda x: x not in lst, secondlst)发布于 2011-11-23 14:13:41
只需查看Python的set()类型即可。
>>> lst = [0,1,2,6]
>>> secondlst = [0,1,2,3,4,5,6]
>>> set(lst).symmetric_difference(set(secondlst))
set([3, 4, 5])https://stackoverflow.com/questions/8238005
复制相似问题