首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python过滤2个列表

Python过滤2个列表
EN

Stack Overflow用户
提问于 2011-11-23 14:11:17
回答 4查看 5.9K关注 0票数 2

我正在尝试找到一种方法来使用一个列表来过滤掉另一个列表的元素。

有点像intersect语法,但恰恰相反

代码语言:javascript
复制
lst = [0,1,2,6]

secondlst = [0,1,2,3,4,5,6]

预期结果

代码语言:javascript
复制
[3,4,5]
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-23 14:13:10

简单的方法:

代码语言:javascript
复制
r = [v for v in secondlst if v not in lst]

代码语言:javascript
复制
list(set(secondlst).difference(lst))
票数 12
EN

Stack Overflow用户

发布于 2011-11-23 14:26:50

您可以使用filter

代码语言:javascript
复制
filter(lambda x: x not in lst, secondlst)
票数 3
EN

Stack Overflow用户

发布于 2011-11-23 14:13:41

只需查看Python的set()类型即可。

代码语言:javascript
复制
>>> lst = [0,1,2,6]
>>> secondlst = [0,1,2,3,4,5,6]
>>> set(lst).symmetric_difference(set(secondlst))
set([3, 4, 5])
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8238005

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档