本文实例讲述了Python实现两个list求交集,并集,差集的方法。分享给大家供大家参考,具体如下:

在python中,数组可以用list来表示。如果有两个数组,分别要求交集,并集与差集,怎么实现比较方便呢?

当然最容易想到的是对两个数组做循环,即写两个for循环来实现。这种写法大部分同学应该都会,而且也没有太多的技术含量,本博主就不解释了。这里给大家使用更为装bility的一些方法。

老规矩,talk is cheap,show me the code

#!/usr/bin/env python

#coding:utf-8

'''

Created on 2016年6月9日

@author: lei.wang

'''

def diff(listA,listB):

#求交集的两种方式

retA = [i for i in listA if i in listB]

retB = list(set(listA).intersection(set(listB)))

print "retA is: ",retA

print "retB is: ",retB

#求并集

retC = list(set(listA).union(set(listB)))

print "retC1 is: ",retC

#求差集,在B中但不在A中

retD = list(set(listB).difference(set(listA)))

print "retD is: ",retD

retE = [i for i in listB if i not in listA]

print "retE is: ",retE

def main():

listA = [1,2,3,4,5]

listB = [3,4,5,6,7]

diff(listA,listB)

if __name__ == '__main__':

main()

让code run起来

retA is: [3, 4, 5]

retB is: [3, 4, 5]

retC1 is: [1, 2, 3, 4, 5, 6, 7]

retD is: [6, 7]

retE is: [6, 7]

结合代码来看,大体上是两种思路:

1.使用列表解析式。列表解析式一般来说比循环更快,而且更pythonic显得更牛逼。

2.将list转成set以后,使用set的各种方法去处理。

更多关于Python相关内容可查看本站专题:《Python列表(list)操作技巧总结》、《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

python中交集并集用什么符号表示_Python实现两个list求交集,并集,差集的方法示例...相关推荐

  1. python中代码注释使用的符号是_Python语句中用于注释代码的符号是

    Python语句中用于注释代码的符号是 答:#号 发电机-双绕组变压器单元接线,发电机出口不装设断路器的原因是(???) 答:断路器造价高. 会计报表各项目的数据必须建立在()的基础之上 答:真实可靠 ...

  2. python中对两个 list 求交集,并集和差集

    python中对两个 list 求交集,并集和差集: 1.首先是较为浅白的做法: >>> a=[1,2,3,4,5,6,7,8,9,10] >>> b=[1,2,3 ...

  3. Linux 两个文件求交集、并集、差集

    Linux 两个文件求交集.并集.差集 原文地址: Linux 两个文件求交集.并集.差集 (https://www.cnblogs.com/molong1208/p/5358509.html) 一. ...

  4. python中函数type可以测试对象类型_Python中type函数type()显示对象的类型,dir函数dir()显示的是对象可用的方法。_学小易找答案...

    [判断题]new_word = word.upper() 这一语句表示将word这个变量的值全部小写并赋给新变量new_word. [单选题]All of the students have fini ...

  5. 两个链表求交集_实现两个排序链表的并集和交集

    两个链表求交集 In computer science, a linked list is a linear collection of data elements, whose order is n ...

  6. 两个 list 求交集

    两个 list 求交集, 一种方式是手动遍历, 然后判断是否 contains, 然后添加到结果 list 中 这里介绍另外一个方法 直接调用 list1.retainAll(list2), 调用完成 ...

  7. SQL:对一个字段多条件查询,取交集(对A字段匹配的多个B字段求交集)

    sql示例:同一个表有teach_id和student_id,求同时学过这几个teach课程的学生: select * from table_xxx where teach_id in (1,2,3) ...

  8. Python中的XOR异或符号^运用

    ^运算符为异或运算 a = 10 b = 100 c = a^b # c = 110 为什么会得到这样的结果呢? bin(10) #'0b1010'bin(100) #'0b1100100' 其实这里 ...

  9. python中的注释有哪些符号_python表示注释的符号是什么

    python表示注释的符号是什么 发布时间:2020-07-20 11:54:08 来源:亿速云 阅读:64 作者:Leah python表示注释的符号是什么?很多新手对此不是很清楚,为了帮助大家解决 ...

最新文章

  1. 1370亿参数、接近人类水平,谷歌重磅推出对话AI模型LaMDA
  2. 关于如何在MyEclipse下修改项目名包名,以及类
  3. WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manua
  4. 视觉平衡与物理平衡_怎样做好摄影中“视觉平衡”的那些事
  5. 探索startActivity流程及在Activity间是如何传递Intent的
  6. python质数n以内_用Python寻找前n个质数
  7. 廖雪峰JavaScript学习笔记(基础及数据类型、变量)
  8. 【.NET特供-第三季】ASP.NET MVC系列:传统WebForm站点和MVC站点执行机制对照
  9. 技术选型:Sentinel vs Hystrix
  10. uvc摄像头代码解析1
  11. 生产者消费者问题实验java,java实现:《操作系统实验一》:模拟管程解决解决生产者-消费者...
  12. Linux 之四 Ubuntu 20.04 WiFi 无法使用、设置无法显示、远程桌面、常用快捷键、SSH、Git、PPA、FFmpeg 等各问题记录
  13. python扫雷游戏代码_基于Python实现的扫雷游戏实例代码
  14. STM32 ESP8266 无线模块使用
  15. 讲台计算机的英语怎么读,讲台的英语单词怎么写,英语怎么拼写!
  16. 专升本-计算机公共课考点(3)——字处理软件Word 2010
  17. 十大盗版软件你用了几个?
  18. Spring+SpringMVC+Mybatis分布式敏捷开发系统架构(附源码)
  19. 在phpMyAdmin使用用户口令登陆(转)
  20. Unity Shader 水多种元素的实现(反射、折射、菲涅尔、深浅、浪花/泡沫、水波、可交互)

热门文章

  1. 【VUE+Elemet 】最全正则验证 + 表单验证 + 注意事项
  2. Linux如何强制关闭任务进程(Linux版任务管理器)
  3. 双碳绿色风中,乘势而起了哪些新能源?
  4. 基于R语言的关联规则分析项目
  5. 一键封装app--webapp、HybridApp
  6. 【GitLab】GitLab CI/CD 模型部署自动化超详细介绍
  7. java 日期 纳秒_java – 具有纳秒的字符串日期转换
  8. 零钱兑换(完全背包)
  9. 响应式与自适应设计:设计师的最佳选择是什么?
  10. python读取excel单元格填充色rgb_Python openpyxl读取单元格字体颜色过程解析