集合里运算符的使用| 学习笔记

简介: 快速学习集合里运算符的使用

开发者学堂课程Python入门 2020年版集合里运算符的使用】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10322


集合里运算符的使用

内容介绍:

一、引言

二、集合的减法运算

三、集合的与运算

四、集合的或运算

五、集合的亦或运算

六、结语

 

一、引言

已知若想要知道所有集合中的人数,需要通过 first+second+third,加完之后输入total=set 命令,这个时候就具有了去重功能。其实除了这种算法之外,我们还有一些其他的算法。

现在我们不使用元组,而是直接使用set进行运算,即 firstsecondthird 全部使用{},这是因为set的功能更为方便,set支持很多的算数运算符。

first={'李白','白居易','李清照','杜甫','王昌龄','王维','孟浩然','王安石'}

second ={'李商隐','杜甫','李白',"白居易','岑参','王昌龄'}

third ={'李清照','刘禹锡','岑参','王昌龄','苏轼','王维','李白'}

需要注意的是,虽然 set 可以支持多种运算符,但是它并不支持加法运算,例如输入并运行print(first +second)发现会报错,因此加法是不支持的。

 

二、集合的减法运算

set 中可以用减法

例如令first-second,代码为print(first -second),表示求AB的差集

运行后发现结果是{'孟浩然','王维','王安石','李清照}。减法就是A减去B,即得到就是AB的差集。观察发现A集合中有李白,B中也有李白;A集合中有白居易,B集合中也有白居易;A集合中有孟浩然,而B集合中没有,那孟浩然就是一个差集;同理,A集合中有王维,B集合中没有,则王维也是一个差集;A集合中有王安石,B集合中没有,王安石也是一个差集;A集合中有李清照,B集合中没有,则李清照也是被减去的数据,也是一个差集。

 

三、集合的与运算

set 中可以进行与运算

例如令firs&second,代码为print(first&second),表示求AB的交集

结果显示为{'王昌龄','李白','杜甫','白居易'},求得结果为AB的交集。

image.png

图示两个、者之间有相交的地方,而相交的地方就是交集,表示两者之间都有的,包括王昌龄、李白、杜甫还有白居易。除了这个之外,A还有自己单独存在的,包括孟浩然、王维、王安石还有李清照,B中单独存在李商隐、岑参。刚才第一个我们所讲的用 first-second 得到的是 A(first)中单独存在的一部分,若用second-first,得到的结果是就是 B(second)中单独存在的李商隐、岑参。-运算符读取的是两者的差集;&运算符得到的是两者都有的,求得交集。

 

四、集合的或运算

set 中可以进行或运算

例如令firs|second代码为print ( first|second ),表示求А和B的并集

运行结果为{'孟浩然','王安石','王昌龄','王维','李白','李商隐','岑参','杜甫','李清照','白居易'},求得结果为AB的并集。

 

五、集合的亦或运算

set 中可以进行亦或运算

例如令firs^second,代码为print ( first^second ),表示求А和B除交集之外的结果,也就是AB差集的并集

运行结果为{'李清照','王安石','王维','岑参','李商隐','孟浩然'},求得的是除了交集之外的所有数据,即差集的并集。

 

六、结语

集合的运算符包括减法、与、或、亦或,可以解决我们之前所讲的其他题目,大家可以自行解决,在此不进行讲解了,大家可以依照答案进行比对。

相关文章
|
6月前
|
存储 Java 数据库
第二章 变量、数据类型和运算符
第二章 变量、数据类型和运算符
|
3月前
|
C++
c++学习笔记02 运算符
C++学习笔记,介绍了C++中的运算符,包括基本的加减乘除、求模、前后置递增递减、赋值运算符、比较运算符和逻辑运算符的使用及其注意事项。
38 6
|
6月前
|
机器学习/深度学习 存储 数据挖掘
Python从入门到精通——学习基础语法和数据类型 1.2.1变量、整数、浮点数、字符串、布尔值、列表、元组、字典和集合。
Python从入门到精通——学习基础语法和数据类型 1.2.1变量、整数、浮点数、字符串、布尔值、列表、元组、字典和集合。
|
6月前
|
Java C++ Python
C/C++每日一练(20230422) 存在重复元素、组合总和、给表达式添加运算符
C/C++每日一练(20230422) 存在重复元素、组合总和、给表达式添加运算符
58 0
C/C++每日一练(20230422) 存在重复元素、组合总和、给表达式添加运算符
|
11月前
集合的运算
集合的运算
79 1
|
6月前
第二章:数据类型、运算符和表达式
第二章:数据类型、运算符和表达式
57 0
|
人工智能 算法 搜索推荐
9.1 C++ STL 排序、算数与集合
C++ STL(Standard Template Library)是C++标准库中的一个重要组成部分,提供了丰富的模板函数和容器,用于处理各种数据结构和算法。在STL中,排序、算数和集合算法是常用的功能,可以帮助我们对数据进行排序、统计、查找以及集合操作等。STL提供的这些算法,能够满足各种数据处理和分析的需求。通过灵活使用这些算法,我们可以高效地对数据进行排序、查找和聚合操作,提高代码的性能和可读性。在实际编程中,根据具体问题的需求选择合适的算法,能够更好地发挥STL的优势,提高程序的效率。
45 0
|
Java
2.3 Lambda表达式在集合操作中的应用:对集合元素进行映射和转换
2.3 Lambda表达式在集合操作中的应用:对集合元素进行映射和转换
160 0
|
索引
【学习笔记之我要C】详解操作符
【学习笔记之我要C】详解操作符
447 0
|
PHP 开发者
运算符介绍| 学习笔记
快速学习运算符介绍。
下一篇
无影云桌面