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)

结果如下图:

cd20544d6bb9

image.png

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

1.使用列表解析式。列表解析式一般来说比循环更快。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489207.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论如何快速完成文件汇总和统计任务

论如何快速完成文件汇总和统计任务 咱就是说,大学生和研究生当个班委,一天天杂事可真多,尤其收excel表以及统计人数等,费时费力。那么如何快速解决这些问题,就是我们今天这篇博文的主要目标。 拿我个人的任务来说&am…

可怕!贺建奎论文手稿意外曝光!基因编辑实验充满谎言

来源:学研加中国双胞胎的基因编辑可能已经失败,并产生了意想不到的突变。这是科学家们阅读了原南方科技大学副教授贺建奎论文手稿后,得出的结论。贺建奎基因编辑婴儿事件2018年11月26日,一则《世界首例免疫艾滋病的基因编辑婴儿在…

l360废墨收集垫清零_知识分享003:EPSON L360打印机出现故障-废墨计数清零

故障现象:客户的EPSON L360打印机出现故障,纸张和墨水报警灯交替闪烁。无法打印原因分析:确定纸张和墨水的是处于正常状态,上网查了,可能是废墨收集到达了上限。需要做清零处理。解决方法:根据这个型号EPSO…

R语言-处理异常值或报错的三个示例

R语言-处理异常值或报错的三个示例 之前用rvest帮人写了一个定期抓取amazon价格库存,并与之前价格比较的小程序,算是近期写过的第一个完整的程序了。里面涉及了一些报错的处理。 这里主要参考了stackoverflow上的以下问答: How to skip an er…

联想e580没有声音_现在你可以购买通过 Linux 认证的联想 ThinkPad 和 ThinkStation

曾经有一段时间,ThinkPad 是 Linux 用户的首选系统。但那是在 ThinkPad 还是 IBM 的产品的时候。来源:https://linux.cn/article-12283-1.html作者:Abhishek Prakash译者:Xingyu.Wang曾经有一段时间,ThinkPad 是 Linux…

UC伯克利教授Stuart Russell人工智能基础概念与34个误区

来源:数据简化DataSimp数据简化DataSimp导读:UC伯克利教授StuartRussell人工智能基础概念与34个误区,Russell是加州大学伯克利分校人工智能系统中心创始人兼计算机科学专业教授,同时还是人工智能领域里「标准教科书」《人工智能&a…

装入归档文件时出现了一个错误linux_静态链接与动态链接(Linux)

前言上一篇分享了静态链接与动态链接的实验(Windows下)。这一篇分享Linux下的笔记,同时对上一篇笔记做一个补充。首先,我们把静态链接与动态链接做一个这样子的比喻:把链接过程看做我们平时学习时做笔记的过程。我们平时学习时准备一本笔记本…

c++ object model

对一个结构体进行不断的封装后可以形成一个c类,为此需要添加很多函数成员之类的代码,为此显示c比c语言显得庞大并且迟缓,但是事实并不是这些 c在布局和时间上的额外承担主要是由virtual引起的 下面简述c对象模型 数据成员包括静态成员和非静态…

9008刷机怎么刷_OV快捷进入高通进9008或fastboot模式刷机解锁,和MTK关机解锁

不喜略过。高通进9008刷机解锁:关机状态下,同时按音量下键上键插线进9008 .(注意安装手机驱动)高通进fastboot模式解锁:旧机型(平台上选择不到机型的)进fast解锁,关机状态 音量下键开机键 MTK关机解锁:关机状态下按音量上键&#…

10年内,19个关键技术将改变世界

来源: 科技联盟技术中心据国外媒体报道,从无人驾驶汽车到机器人工人,在我们熟悉所有这一切之前,未来正迎面走来。根据世界经济论坛全球议程理事会关于《未来软件与社会》的一份报告,到2025年前,很多新兴技术…

scope参数错误或没有scope权限_SSM 单体框架 - 前端开发:用户和权限模块

用户管理分页 & 条件查询用户数据查询条件1. 用户手机号 2. 注册时间,包含开始日期和结束日期日期选择器组件在查询条件中使用了 Element UI 中的日期选择器:https://element.eleme.cn/#/zh-CN/component/date-picker#mo-ren-xian-shi-ri-qi在测试项目中创建一个…

武器化道路越走越远的无人机

来源:雷擎科技在数以千计的军用无人机中,绝大部分都用于监视。国防专家预测这种情况将会一直存在。Janes的分析师预计,在未来10年内,全球将购买超过80,000架监视无人机和近2,000架攻击无人机。武器化的无人机并不便宜。专家表示&a…

怎样查看cudnn版本_ubuntu16.04+Geforce GTX1060安装CUDA和cuDNN

DELL G7系列,ubuntu16.04,本机显卡型号: GeForce GTX 1060。主要步骤如下:一,安装NVIDIA驱动。1,本笔记本是F12进入BIOS,将secure boot设置为disable。2,通过下面命令确保电脑上之前的nvidia驱动…

Unity3DGUI:Window

#pragma strictvar winRect:RectRect(30,100,150,200);var windowShow:booleantrue;function OnGUI () { windowShowGUI.Toggle(Rect(10,10,100,20),windowShow,"窗口显示"); if(windowShow) //参数:windowID,位置,回调函数&#x…

android分享文件分享结果_干货分享丨DM删除归档日志文件的多种方法

上一期我们讲解了DM数据库归档日志的切换,本期我们讲解DM数据库归档日志文件的删除。本章内容已在如下环境上测试:①操作系统:中标麒麟7;②数据库版本:达梦8;相关关键字:DM数据库、归档日志文件…

三个维度看全球半导体格局变迁

来源:世纪证券费城半导体指数(SOX) 的发展阶段反应了全球半导体的走势与兴衰更替。费半指数涵盖全球半导体设计、设备、制造、 材料等方向, 其走势可以是衡量全球半导体行业景气程度的主要指标。费城半导体指数发行于在 1993 年12…

alot英文怎么读_很多的英文怎么说

你知道吗?一起来学习一下吧!很多的英文:可数:a lot of, lots of, many不可数:a good/great deal of , a good/ great amount of两者皆可:a large quantity of, quantities of同义词辨析:a lot of 和 lots of &#xf…

用samba来创建windows下的文件共享

前言 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现…

go 微服务框架_清晰架构(Clean Architecture)的Go微服务

更新我最进对这个框架进行了重大升级,虽然所做的改动不大,但成效显著。这次更新修复了旧框架中的所有主要问题,尽管它的的主要项目结构和接口都没有改变,具体改动内容请参见清晰架构(Clean Architecture)的…

贝叶斯网络之父Judea Pearl力荐、LeCun点赞,这篇长论文全面解读机器学习中的因果关系...

来源:机器之心作者:Bernhard Schlkopf图灵奖得主、贝叶斯网络之父 Judea Pearl 曾自嘲自己是「AI 社区的反叛者」,因为他对人工智能发展方向的观点与主流趋势相反。Pearl 认为,尽管现有的机器学习模型已经取得了巨大的进步&#x…