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

yipeiwu_com5年前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中拼接路径os.path.join斜杠的问题

调试程序的过程中,发现通过os.path.join拼接的路径出现了反斜杠 directory1='/opt/apps/upgradePackage' directory2='icp_...

Python对文件操作知识汇总

打开文件 操作文件 1打开文件时,需要指定文件路径和打开方式 打开方式: r:只读 w:只写 a:追加 “+”表示可以同时读写某个文件 r+:读写 w+:写读 a+:同a U"表示在读取...

python如何删除文件中重复的字段

本文实例为大家分享了python如何删除文件中重复字段的具体代码,供大家参考,具体内容如下 原文件内容放在list中,新文件内容按行查找,如果没有出现在list中则写入第三个文件中。...

Python实现Windows和Linux之间互相传输文件(文件夹)的方法

Python实现Windows和Linux之间互相传输文件(文件夹)的方法

项目中需要从Windows系统传输ISO文件到Linux测试系统,然后再Linux测试系统里安装这个ISO文件。所以就需要实现如何把文件从Windows系统传输到Linux系统中。 在项...

python3中eval函数用法使用简介

python中eval函数的用法十分的灵活,这里主要介绍一下它的原理和一些使用的场合。 下面是从python的官方文档中的解释:   The arguments ar...