【Python】此集合非彼集合
?write in front? ?大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流? ?2021年度博客之星物联网与嵌入式开发TOP5→周榜31→总榜2513? ?本文由 謓泽 原创 CSDN首发? 如需转载还请通知⚠ ?个人主页:打打酱油desu-CSDN博客? ?欢迎各位→点赞? + 收藏⭐️ + 留言? ?系列专栏:【Python】系列_謓泽的博客-CSDN博客? ✉️我们并非登上我们所选择的舞台,演出并非我们所选择的剧本?
目录
?(set)集合类型
集合 set 是一个无序且不重复元素的对象的对象。集合和列表"[]"都是可以相互进行转换的。集合可以进行元素的添加,查询、删除操作,也可以进行并集、交集、差集的算数运算。 简单的说,集合就是包含了一些唯一存在的元素。元素有以下几个特性: 无序性,集合中保存的元素是没有顺序的。 多样性,集合中可以保存多种数据类型的元素。 唯一性,集合中的元素都是唯一存在的,不会重复出现。
?集合的定义
集合可以使用大括号"{}" 或 set() 来进行定义,注意:set()函数是强制转换来进行创建。还有一点也要注意,不能使用"{}"来定义一个空集合,因为为"{}"实际上是在创建一个空字典(这个后续的文章会进行详细详解的) 你现在只需要明白这一点即可。
?创建集合
在创建集合的时候有两种方式,一种是直接使用集合的特征符号"{}"来创建,一种是使用set()函数强制类型转换来创建。 首先我们要知道集合和字典的区别,集合是由"{}"括起来的结构,每个元素之间用逗号(",")隔开,集合和字典都是用大括号括起来,但是集合之间不使用冒号。然而,字典内的键值之间会通过冒号":"来进行分割! 集合的结构为:示例代码如下?
my_set = {元素1,元素2,元素3}
my_set为要创建的集合名,括号内的为集合中的元素。
?声明集合
声明一个集合为set() 示例代码如下?
my_set = {1,2,3,4,5,6,7,8,9,10,"PY"}
print(my_set)
代码编译运行结果:{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'PY'}
?字符串转换集合
⚠提醒:set()函数可以强制转换创建集合! 示例代码如下?
my_set = set("Pythonyydstqll")
print(my_set)
代码编译运行结果:{'o', 'h', 'l', 's', 'y', 'n', 'q', 't', 'd', 'P'} ?注意:将字符串转换为集合之后,从输出的集合结果可以看出集合以及没有所重复的元素,而且元素的顺序和字符串中的顺序也不会相同,这是因为集合是一个无需且不会重复的元素对象。利用这个特性,可以除去列表当中的重复元素。
?将列表以及元组转换成F
⚠提醒:set()函数可以强制转换创建集合! 示例代码如下?
set1 = set((1,2,3,4,5))
set2 = set([6,7,8,9,10])
print(set1)
print(set2)
set1 是 强制转换元组 set2 是 强制转换列表 代码编译运行结果: {1, 2, 3, 4, 5} {6, 7, 8, 9, 10}
?集合的查询操作
集合中的数据的查询不能单独获取集合中的某一个元素,只能通过遍历的方式去获取每一个。那就是通过 for 语句可以遍历整个集合的循环结构。
My_set = set("100123Python")
for sit in My_set:
print(sit)
代码编译运行结果: P 3 0 y n o 1 t h 2 ?注意:将字符串转换为集合之后,从输出的集合结果可以看出集合以及没有所重复的元素,而且元素的顺序和字符串中的顺序也不会相同,这是因为集合是一个无需且不会重复的元素对象。利用这个特性,可以除去列表当中的重复元素。(遍历也不例外!)
?集合的增加操作
向集合增加新元素的时候,可以使用 update() 和 add() 函数方法。集合新增数据语法如下: 集合1.update(集合2),将集合2中的元素添加到集合1当中。 集合.add(元素),将指定的元素添加到指定的集合当中。
?update()
将 set2 中元素添加到 set1 当中 在集合当中增加元素,示例代码如下?
set1 = set('7171')
set2 = set('PYYYDS')
set1.update(set2)
print(set1)
代码编译运行结果:{'P', 'Y', '7', 'S', 'D', '1'}
?add()
将指定的元素添加到指定的集合当中。 在集合当中增加元素,示例代码如下?
set1 = set('7171')
set1.add('PYYYDS')
print(set1)
代码编译运行结果:{'PYYYDS', '1', '7'}
?清空集合
在学习增添和删除元素之前我们可以回忆一下del()方法,del()方法可以直接删除整个集合,语法格式为:
del my_set
?删除元素
删除元素可以使用集合的方法pop()或者remove()方法去删除一个元素,也可以使用clear()方法去清空集合。 需要注意的是remove()方法是移除指定元素。 pop()方法是直接删除集合中的第一个元素并输出。
?remove()
集合.remove(元素),将指定的元素从集合当中删除。 示例代码如下?
set = {"apple", "banana", "cherry"}
set.remove("banana")
print(set)
代码编译运行结果:{'apple', 'cherry'}
?pop()
集合是无序的,因此在使用 集合.pop() 方法时,您不会知道删除的是哪个元素。
set = {"apple", "banana", "cherry"}
set.pop()
print(set)
(不唯一性)代码编译运行结果: {'cherry', 'banana'}
以上还有一些删除集合元素的方法这里就不逐一列举了,有兴趣小伙伴可以去网上查查。
?集合的运算
Python 中的集合是一个无需不重复的元素集,其支持联合(union)、交(intersection)、差(difference)、对称差集(sysmmetric difference) 等数学运算及包含关系的判断。 再次提醒:集合是无序的! 语法如下: 集合数学运算:并集("|")、交集("&")、差集("-")、补集("^") 示例代码如下? 交集("&")
A = {'数学','语文','英语','物理','化学','生物'}
B = {'数学','语文','英语','政治','地理','历史'}
print(A & B)
代码编译运行结果: {'英语', '语文', '数学'}
✨ 分割线 ✨
示例代码如下? 并集("|")
A = {'数学','语文','英语','物理','化学','生物'}
B = {'数学','语文','英语','政治','地理','历史'}
print(A | B)
代码编译运行结果:{'地理', '生物', '数学', '语文', '化学', '物理', '政治', '历史', '英语'}
✨ 分割线 ✨
示例代码如下? 差集("-")
A = {'数学','语文','英语','物理','化学','生物'}
B = {'数学','语文','英语','政治','地理','历史'}
print(A - B)
代码编译运行结果: {'化学', '物理', '生物'}
✨ 分割线 ✨
示例代码如下? 补集("^")
A = {'数学','语文','英语','物理','化学','生物'}
B = {'数学','语文','英语','政治','地理','历史'}
print(A ^ B)
代码编译运行结果:{'生物', '化学', '地理', '物理', '历史', '政治'}
?判断集合1和集合2的包含关系
集合的包含关系:>=、<= 示例代码如下?
set1 = set('abcdefg')
set2 = set('abcdef')
# 判断集合1中是否包含集合2,结果式布尔值
print(set1>=set2)
# 判断集合2中是否包含集合1
print(set1<=set2)
代码编译运行结果: True (成立) False (不成立)
相关文章
- Python: PyQt5在Pycharm中的配置
- Python: 按位或运算符(Bitwise OR)
- 不知道"鸭子类型"就当没学过python
- 盘一盘 Python 特别篇 23 - 爱因斯坦求和 einsum
- Python中的一个神秘文件:__init__.py 使用讲解
- 孤陋寡闻了,Python中类竟可以像列表一样操作
- Python表白C#?文末有彩蛋!
- (数据科学学习手札147)Python GIS利器shapely全新2.0版本一览
- Python 大数据量文本文件高效解析方案代码实现
- Python3.11正式版,它来了!
- 入门Python,看完这篇就行了!
- Python操作Excel表格
- Python实现XMind测试用例快速转Excel用例
- 做自动化测试选择Python还是Java?
- Python语法糖,提升编程幸福感!!!
- 你真的懂Python命名吗?
- Python接口自动化——文件上传/下载接口
- Python日志模块封装
- Python3 pip
- Python环境搭建(Python解释器&PyCharm编辑器)