站长在线Python精讲:Python中集合的交集、并集、差集和对称差集运算方法详解

本文主要是介绍站长在线Python精讲:Python中集合的交集、并集、差集和对称差集运算方法详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python中集合的交集、并集、差集和对称差集运算方法详解》。主要讲的是集合运算的相关的概念,及运算方法,包括:集合的交集、集合的并集、集合的差集、集合的对称差集、集合的交集运算方法、集合的并集运算方法、集合的差集运算方法、集合的对称差集运算方法。

目录

1、集合运算的相关含义:

1.1、集合的交集的含义:

1.2、集合的并集的含义:

1.3、集合的差集的含义:

1.4、集合的对称差集的含义:

2、集合的运算方法

2.1、集合的交集运算方法

2.1.1、使用“&”运算符进行交集运算

2.1.2、使用intersection()方法进行交集运算

2.2、集合的并集运算方法

2.2.1、使用“|”运算符进行并集运算

2.2.2、使用union()方法进行并集运算

2.3、集合的差集运算方法

2.3.1、使用“-”运算符进行差集运算

2.3.2、使用difference()方法进行差集运算

2.4、集合的对称差集运算方法

2.4.1、使用“^”运算符进行对称差集运算

2.4.2、使用symmetric_difference()方法进行对称差集运算


在Python中,集合最常用的操作就是进行交集、并集、差集和对称差集的运算。

要想学习集合的交集、并集、差集和对称差集运算方法,首先我们来了解这些名词的含义:

1、集合运算的相关含义:

1.1、集合的交集的含义:

设A、B两个集合,由所有属于集合A且属于集合B的元素所组成的集合,叫做集合A与集合B的交集。在Python中,进行交集运算时使用“&”符号。

1.2、集合的并集的含义:

给定两个集合A、B,把他们所有的元素合并在一起组成的集合,叫做集合A与集合B的并集。在Python中,进行并集运算时使用“|”符号。

1.3、集合的差集的含义:

设A,B是两个集合,则所有属于A且不属于B的元素构成的集合,叫做集合A与集合B的差集。在Python中,进行差集运算时使用“-”符号。

1.4、集合的对称差集的含义:

对称差集也称为对称差分或者补集,设A,B是两个集合,所有不相同的集合,叫做集合A与集合B的对称差集(对称差分或者补集)。在Python中,进行对称差集运算时使用“^”符号。

2、集合的运算方法

上面都是概念性的描述,下面站长在线来举实际的场景来对交集、并集、差集和对称差集运算方法进行深入浅出的解读。

场景模拟:某高中三年级,文科班高考的科目是语文、数学、英语、政治、历史和地理。理科班高考的科目是语文、数学、英语、物理、化学和生物。

设定集合A为文科班高考的科目,集合B为理科班高考的科目。

A = {'语文','数学','英语','政治','历史','地理'}

B = {'语文','数学','英语','物理','化学','生物'}

2.1、集合的交集运算方法

我们使用集合的交集运算的时候可以采用两种方式,一种是使用“&”运算符进行操作,另一种是使用intersection()方法来实现。

2.1.1、使用“&”运算符进行交集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A & B)    # 输出集合A和集合B的交集

运行结果:

{'英语', '数学', '语文'}
>>> 

2.1.2、使用intersection()方法进行交集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A.intersection(B))  # 输出集合A和集合B的交集

运行结果:

{'英语', '语文', '数学'}
>>> 

同理集合B和集合A的交集也是一样。我这里就不重复了,自己去体验一下。

2.2、集合的并集运算方法

集合的并集运算也有两种方式,一种是使用“|”运算符进行操作,另一种是使用union()方法来实现。

2.2.1、使用“|”运算符进行并集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A | B)    # 输出集合A和集合B的并集

运行结果如下:

{'数学', '生物', '政治', '物理', '地理', '化学', '语文', '英语', '历史'}
>>> 

2.2.2、使用union()方法进行并集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A.union(B))  # 输出集合A和集合B的并集

运行结果为:

{'英语', '语文', '地理', '生物', '政治', '化学', '数学', '物理', '历史'}
>>> 

同理集合B和集合A的并集也是一样。自己去体验一下吧!

2.3、集合的差集运算方法

集合的差集运算也有两种方式,一种是使用“-”运算符进行操作,另一种是使用difference()方法来实现。

2.3.1、使用“-”运算符进行差集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A - B)    # 输出集合A和集合B的差集

运行结果为:

{'历史', '地理', '政治'}
>>> 

上面是集合A和集合B的差集,但是集合B和集合A的差集就不是一样的了哦!

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(B - A)    # 输出集合B和集合A的差集

运行结果为:

{'化学', '生物', '物理'}
>>> 

从上面可以看出,集合A和集合B的差集  与  集合B和集合A的差集是不一样的,(A - B)是A中存在的部分,(B - A)是B中存在的部分。

2.3.2、使用difference()方法进行差集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A.difference(B))  # 输出集合A和集合B的差集

运行结果:

{'地理', '政治', '历史'}
>>> 

同理,使用difference()方法进行集合B和集合A的差集也是不同的

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(B.difference(A))  # 输出集合B和集合A的差集

运行结果:

{'物理', '化学', '生物'}
>>> 

2.4、集合的对称差集运算方法

集合的差集运算也有两种方式,一种是使用“^”运算符进行操作,另一种是使用symmetric_difference()方法来实现。

2.4.1、使用“^”运算符进行对称差集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A ^ B)    # 输出集合A和集合B的对称差集

运行结果为:

{'地理', '化学', '生物', '政治', '物理', '历史'}
>>> 

2.4.2、使用symmetric_difference()方法进行对称差集运算

A = {'语文','数学','英语','政治','历史','地理'}
B = {'语文','数学','英语','物理','化学','生物'}
print(A.symmetric_difference(B))  # 输出集合A和集合B的对称差集

运行结果为:

{'政治', '生物', '地理', '化学', '历史', '物理'}
>>> 

同样的,集合B与集合A的对称差集也是一样,自己去体验一下。

我们对集合的交集、并集、差集和对称差集运算方法全部详细的讲解了一遍,通过运行结果,我们得出结论:

集合中进行交集、并集、对称差集进行运算的时候,集合A与集合B,位置替换的时候,结果相同。

集合中进行差集运算的时候,集合A与集合B,位置替换的时候,结果不同,为前面那个集合独立存在的部分。

到此为止,本节课的内容《Python中集合的交集、并集、差集和对称差集运算方法详解》就完全讲完了,主要讲的集合运算的相关的概念,及运算方法,包括:集合的交集、集合的并集、集合的差集、集合的对称差集、集合的交集运算方法、集合的并集运算方法、集合的差集运算方法、集合的对称差集运算方法。

关注【站长在线】,让新手小白系统的零基础学习Python,感谢你对我们的关注,点赞,转发,评论哦!

这篇关于站长在线Python精讲:Python中集合的交集、并集、差集和对称差集运算方法详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/978075

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

电力系统中的A类在线监测装置—APView400

随着电力系统的日益复杂和人们对电能质量要求的提高,电能质量在线监测装置在电力系统中得到广泛应用。目前,市场上的在线监测装置主要分为A类和B类两种类型,A类和B类在线监测装置主要区别在于应用场景、技术参数、通讯协议和扩展性。选择时应根据实际需求和应用场景综合考虑,并定期维护和校准。电能质量在线监测装置是用于实时监测电力系统中的电能质量参数的设备。 APView400电能质量A类在线监测装置以其多核

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

浅谈主机加固,六种有效的主机加固方法

在数字化时代,数据的价值不言而喻,但随之而来的安全威胁也日益严峻。从勒索病毒到内部泄露,企业的数据安全面临着前所未有的挑战。为了应对这些挑战,一种全新的主机加固解决方案应运而生。 MCK主机加固解决方案,采用先进的安全容器中间件技术,构建起一套内核级的纵深立体防护体系。这一体系突破了传统安全防护的局限,即使在管理员权限被恶意利用的情况下,也能确保服务器的安全稳定运行。 普适主机加固措施:

webm怎么转换成mp4?这几种方法超多人在用!

webm怎么转换成mp4?WebM作为一种新兴的视频编码格式,近年来逐渐进入大众视野,其背后承载着诸多优势,但同时也伴随着不容忽视的局限性,首要挑战在于其兼容性边界,尽管WebM已广泛适应于众多网站与软件平台,但在特定应用环境或老旧设备上,其兼容难题依旧凸显,为用户体验带来不便,再者,WebM格式的非普适性也体现在编辑流程上,由于它并非行业内的通用标准,编辑过程中可能会遭遇格式不兼容的障碍,导致操