Python求两个list的差集 交集 并集的实例

一.两个list差集

如有下面两个数组:
a = [1,2,3]
b = [2,3]

想要的结果是[1]

下面记录一下三种实现方式:

1. 正常的方式

 代码如下 复制代码

ret = []
for i in a:
    if i not in b:
        ret.append(i)

2. 浓缩版

 代码如下 复制代码

ret = [ i for i in a if i not in b ]

3. 另一版

 代码如下 复制代码

ret = list(set(a) ^ set(b))

www.111cn.net站长个人更喜欢第三种实现方式

二. 获取两个list 的并集

 代码如下 复制代码

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

三. 获取两个 list 的差集

 代码如下 复制代码

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

时间: 2024-09-27 01:16:28

Python求两个list的差集 交集 并集的实例的相关文章

Python求两个list的差集

  一.两个list差集 如有下面两个数组: a = [1,2,3] b = [2,3] 想要的结果是[1] 下面记录一下三种实现方式: 1. 正常的方式  代码如下   ret = [] for i in a:     if i not in b:         ret.append(i) 2. 浓缩版  代码如下   ret = [ i for i in a if i not in b ] 3. 另一版  代码如下   ret = list(set(a) ^ set(b)) www.111

vba-用VBA如何快速地求两个区域的差集

问题描述 用VBA如何快速地求两个区域的差集 比如区域R1为A1:F100,区域R2为C30:E58,如何快速地求出R1中去掉R2后的区域R3? 解决方案 Kettle中求两个记录集的差集

求两个DataTable的差集

问题描述 哪位大侠有比较好的方法可以很快的求出两个DataTable的差集啊. 解决方案 解决方案二:循环操作记录求取.解决方案三:不是很明白你说的意思能再说具体点吗?解决方案四:循环记录的方式效率太低了,如果两个表每个表都有上万的数据呢,你计算一下这个计算量是多大呀.我的意思是说有A,B两张表,假设:A表里有1,2,3,4,5这5条数据,B表里有1,2,4这三条数据,我们可以用什么方法最快的把3,5这两条数据取出来.解决方案五:这个要设一个主键,如id,确保唯一,然后用notin做筛选现在假设

python获得两个数组交集、并集、差集的方法_python

本文实例讲述了python获得两个数组交集.并集.差集的房部分.分享给大家供大家参考.具体如下: 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. 获取两个

Python 两个列表的差集、并集和交集实现代码_python

①差集 方法一: if __name__ == '__main__': a_list = [{'a' : 1}, {'b' : 2}, {'c' : 3}, {'d' : 4}, {'e' : 5}] b_list = [{'a' : 1}, {'b' : 2}] ret_list = [] for item in a_list: if item not in b_list: ret_list.append(item) for item in b_list: if item not in a_l

输入集合A、B和全集C,求两集合的交集、并集、补集、差集

//输入集合A.B和全集C,求两集合的交集.并集.补集.差集 /* 并集:以属于A或属于B的元素为元素的集合成为A与B的并(集) 交集: 以属于A且属于B的元素为元素的集合成为A与B的交(集) 差:以属于A而不属于B的元素为元素的集合成为A与B的差(集) 补集:A的补集C-B */ /* 例如:A={1,2,3} B={2,3,4} C={1,2,3,4,5} AB并集为={1,2,3,4} 交集为={2,3} A补集={4,5} AB差集为={1} */ #include <iostream>

python求列表交集的方法汇总_python

本文实例汇总了python求列表交集的方法.分享给大家供大家参考.具体方法如下: 交集对于给定的两个集合A 和 集合B 的交集是指含有所有既属于 A 又属于 B 的元素,而没有其他元素的集合叫交集了,下面给出几个python求列表交集例子供大家参考. 方法1 遍历b1,如果某个元素同时也存在于b2中,则返回 复制代码 代码如下: b1=[1,2,3] b2=[2,3,4] b3 = [val for val in b1 if val in b2] print b3 运行结果如下 复制代码 代码如

如何求两个数组的交集

题目意思大概是这样的:给定两个大数组(1w以上1亿以下),用最有效的方法找出来两个数组的交集. 对于这道题,我有一个思路就是,先对数组进行排序,然后用两个指针在已排序的数组上轮流指向头结点,进行比较. 比较亮的地方,就是在于这个比较的方式了. 首先,比较的时候,要先确定两个指针指向的内用是否一致.如果一致,那么这个点,就是交集的一个元素,没问题吧? 这里有一个问题就是,接下来如何比较? 步骤是这样的:先比较两个指针指向内容的大小,指向结果小的指针,开始递增,直到较小的指针指向的值大于或等于另一个

算法 正则 java 交集-求算法 判断两个正则表达式是否存在交集

问题描述 求算法 判断两个正则表达式是否存在交集 求算法 判断两个正则表达式是否存在交集,最好java的 十分感谢