python两个 list 获取交集,并集,差集的方法.

有时候,为了需求,需要统计两个 list 之间的交集,并集,差集。查询了一些资料,现在总结在下面:
1. 获取两个list 的交集
程序代码 程序代码

#方法一:
a=[2,3,4,5]
b=[2,5,8]
tmp = [val for val in a if val in b]
print tmp
#[2, 5]

#方法二
print list(set(a).intersection(set(b)))


2. 获取两个list 的并集
程序代码 程序代码

print list(set(a).union(set(b)))


3. 获取两个 list 的差集
程序代码 程序代码

print list(set(b).difference(set(a))) # b中有而a中没有的


通过以上方法,就能处理python list 的交集,并集,差集了。

除非申明,文章均为一号门原创,转载请注明本文地址,谢谢!
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 1 | 引用: 0 | 查看次数: -
回复回复旅途[2017-08-24 10:39 AM | del]
楼主,我想问一下如果有两万条数据就需要写两万个a  b  c.........是么,计算量太大了
回复来自 yihaomen 的评论 yihaomen 于 2017-08-24 08:31 PM 回复
一般是两两比较呀。
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.