专栏首页python前行者[898]python获取两个list交集|并集|差集

[898]python获取两个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)))
  1. 获取两个list 的并集:
#方法一:
print(list(set(a+b)))

#方法二 比方法一快很多!
print(list(set(a).union(set(b))))
  1. 获取两个 list 的差集:
#方法一:
tmp = [val for val in b if val not in a] # b中有而a中没有的 
print(tmp)

#方法二 比方法一快很多!
print list(set(b).difference(set(a))) # b中有而a中没有的      非常高效!

python Set交集、并集、差集

s = set([3,5,9,10,20,40])      #创建一个数值集合 
t = set([3,5,9,1,7,29,81])      #创建一个数值集合 

a = t | s          # t 和 s的并集 ,等价于t.union(s)
b = t & s          # t 和 s的交集 ,等价于t.intersection(s) 
c = t - s          # 求差集(项在t中,但不在s中)  ,等价于t.difference(s) 
d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中),等价于t.symmetric_difference(s)

参考:https://www.cnblogs.com/jlf0103/p/8882896.html https://www.cnblogs.com/jingtyu/p/7238743.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 面向对象

    面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)

    周小董
  • python 快速比较两个文件的不同

    周小董
  • [735]利用UItraISO软碟通制作U盘启动盘安装Ubuntu16.04系统

    第2,3可以不勾选:第2选项是默认.ISO文件都用软碟通打开,不经常使用软碟通没必要关联;第3选项会生产一个驱动器(空盘),类似于百度云盘的,不经常使用软碟通不...

    周小董
  • python两个 list 获取交集,并集,差集的方法.

    获取两个list 的交集 #方法一: a=[2,3,4,5] b=[2,5,8] tmp = [val for val in a if val in b] pr...

    学到老
  • python两个 list 获取交集,并集,差集的方法.

    学到老
  • python中map()和dict()的用法

    其中func为一个功能函数,iter表示可迭代参数序列。map()将把func作用于参数列表的每个元素上,并返回一个新的list列表。

    范中豪
  • 从 JavaScript、ES6、ES7 到 ES10,你学到哪儿了?[每日前端夜话0xF8]

    什么是 JavaScript?据 Wikipedia 的描述,它是一种符合 ECMAScript 规范的脚本语言。ES6,ES7等这些名字你可能听说过,你也很可...

    疯狂的技术宅
  • 零基础学习Python需要怎样的基础和准备?

    对于希望自学Python的同学在着手学习之前可以对自己的知识结构和未来的职业规划进行一次自我评估。如果评估结果良好,入门Python也就没有想象中那么难了。闲言...

    python学习教程
  • Pytorch-张量相加的四种方法 / .item()用法

    Any operation that mutates a tensor in-place is post-fixed with an . For example...

    于小勇
  • Python的函数式编程

    ZONGLYN

扫码关注云+社区

领取腾讯云代金券