python交并补_python两个列表求交、并、差
在python中,如果有两个数组,分别要求交集,并集与差集,怎么实现比较方便呢?
当然最容易想到的是对两个数组做循环,即写两个for循环来实现。这种写法大部分同学应该都会,而且也没有太多的技术含量,下面介绍一些常用的方法。
# -*- encoding:utf-8 -*-
def diff(listA, listB):
# 交集方法1
retA = [i for i in listA if i in listB]
# 交集方法2
retB = list(set(listA).intersection(set(listB)))
print '---------交集--------'
print 'retA:%s' % retA
print 'retB%s' % retB
# 并集
retC = list(set(listA).union(set(listB)))
print '---------并集--------'
print 'retC:%s' % retC
# 差集 方法1 在B中不在A中
retD = list(set(listB).difference(set(listA)))
print '---------差集方法1--------'
print 'retD:%s' % retD
# 差集 方法2 在B中不在A中
retE = [i for i in listB if i not in listA]
print '---------差集方法2-----'
print 'retE:%s' % retE
if __name__ == '__main__':
listA = [1, 2, 3, 4, 5]
listB = [3, 4, 5, 6, 7]
diff(listA, listB)
结果如下图:
image.png
结合代码来看,大体上是两种思路:
1.使用列表解析式。列表解析式一般来说比循环更快。
2.将list转成set以后,使用set的各种方法去处理。
python交并补_python两个列表求交、并、差相关推荐
- python交并补_Python 集合的交差并补操作及方法
1.集合的交差并补 intersection() 交集 set1 ={'卢俊义','花荣', '吴用'} set2 ={'公孙胜','秦明','卢俊义'} res = set1.intersectio ...
- python中怎么比较两个列表-python中如何比较两个列表不同
通过不断的测试发现,python实现高效快速比对两个列表的不同,可借助python集合set()提供的集合运算进行操作,此方式效率非常高. 而在java语言中,如下方法中方法1相比方法2(集合运算)的 ...
- python中怎么比较两个列表-python中如何比较两个列表
cmp() 方法用于比较两个列表的元素. cmp()方法语法:cmp(list1, list2) 参数: list1 -- 比较的列表.list2 -- 比较的列表. 返回值: 如果比较的元素是同类型 ...
- python中如何将两个列表进行合并_Python中如何把两个list合并,并按从小到大顺序排列?...
本题分为两个部分:一个是list的合并,一个是用while loop循环将合并后的数组从小到大进行排序--排序问题. 1. List的合并: list的合并其实非常简单,只需要用"+&quo ...
- python中怎么比较两个列表的大小_Python:找到两个列表中存在的给定长度的公共子列表...
我必须找到一个有效的python代码来执行以下操作: 查找n包含在两个给定列表中的至少一个(如果存在的话)连续元素序列. 例如,使用n=3,这两个列表的结果将是['Tom', 'Sam', 'Jill ...
- python中如何比较两个列表_python中如何比较两个列表
cmp() 方法用于比较两个列表的元素. cmp()方法语法:cmp(list1, list2) 参数: list1 -- 比较的列表.list2 -- 比较的列表. 返回值: 如果比较的元素是同类型 ...
- python求交点坐标_Python - 两圆相交求交点坐标
Python - 两圆相交求交点坐标 Max.Bai 2016-05-16 Python - 两圆相交求交点坐标 三轴机械臂求坐标问题,其实转化为平面问题就是两圆相交求交点问题,交点算出来就可以用反三 ...
- python中如何将两个列表进行合并_python怎样将两个list合并
python中两个列表合并:a=[1, 2, 3, 4, 5, 6] b=['a', 'b', 'c', 'd'] 方法1: a+b 如下:>>> a=[1,2,3,4,5,6] & ...
- python交并补符号_三种方式实现 Python 中的集合的交、并、补运算-阿里云开发者社区...
三种方式实现 Python 中的集合的交.并.补运算 一 背景 集合这个概念在我们高中阶段就有所了解,毕业已多年,我们一起回顾一下几个集合相关的基本概念吧? 集合是指具有某种特定性质的具体的或抽象的对 ...
最新文章
- excel中使用CORREL函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性
- Centos7常用操作
- webpack流程图
- Ping Function
- 执行jar包,输出信息到文件
- 期权协议Charm在主网上线为UniswapV3设计的被动做市策略AlphaVaults
- java读取合并单元格_Java POI常用方法,读取单元格的值,设置单元格格式,合并单元格,获取已合并的单元格,导出至本地等...
- 【find】Linux中find常见用法示例
- 使用python的sklearn包实现CCA(典型相关分析)
- 用pdftocairo将PDF图片转成svg矢量图
- 问题解决:error CS0234: 命名空间“System”中不存在类型或命名空间名“CodeDom”/“ComponentModel”(是否缺少程序集引用?)
- Running pipenv gives TypeError: 'module' object is not callable
- 阿里员工调侃:花名考拉的妹子离职去了网易考拉,现在又回来了
- 百度地图-创建标注 画线
- 全国计算机等级考试ms office,全国计算机等级考试一级ms office
- 华为软开云7--部署
- win10 截屏自带快捷键(矩形,任意图形)
- Microsoft Outlook 2019 for mac(电子邮件和日历工具) v16.45Beta中文激活版
- 四川麻将必胜攻略笔记(入门篇1)
- 【疫情分析--数据采集】