Python求两个list的差集、交集与并集的方法

yipeiwu_com6年前Python基础

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

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))

个人更喜欢第三种实现方式

二. 获取两个list 的并集
 

复制代码 代码如下:
print list(set(a).union(set(b)))

三. 获取两个 list 的差集

复制代码 代码如下:
print list(set(b).difference(set(a))) # b中有而a中没有的

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

相关文章

Python 私有化操作实例分析

Python 私有化操作实例分析

本文实例讲述了Python 私有化操作。分享给大家供大家参考,具体如下: 私有化 xx: 公有变量 _x: 单前置下划线,私有化属性或方法,from somemodule import...

python学习之hook钩子的原理和使用

python学习之hook钩子的原理和使用

什么是钩子 之前有转一篇关于回调函数的文章 钩子函数、注册函数、回调函数,他们的概念其实是一样的。 钩子函数,顾名思义,就是把我们自己实现的hook函数在某一时刻挂接到目标挂载点上。...

Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子

scapy是python写的一个功能强大的交互式数据包处理程序,可用来发送、嗅探、解析和伪造网络数据包,常常被用到网络攻击和测试中。 这里就直接用python的scapy搞。 这里是ar...

初步介绍Python中的pydoc模块和distutils模块

pydoc Ka-Ping Yee 曾创建了一个相当著名的模块,名叫 pydoc (比较而言: pydoc 可以做到 perldoc 所能做的任何事,并且做得更好、更漂亮:-)。对于 P...

python中函数传参详解

一、参数传入规则 可变参数允许传入0个或任意个参数,在函数调用时自动组装成一个tuple; 关键字参数允许传入0个或任意个参数,在函数调用时自动组装成一个dict; 1. 传入可变参数:...