Python学习:集合set的全面解析
185 浏览量
更新于2024-09-01
收藏 99KB PDF 举报
"这篇Python学习笔记主要探讨了元组、集合、列表和字典这四种数据结构的概念和差异,特别是集中在集合(set)的特点和常用操作上。文章首先介绍了集合的基本概念,包括其无序且元素不重复的特性,以及如何通过不同方式初始化集合。接着,文章阐述了集合的特性,如自动去重功能,以及如何使用成员操作符、for循环和枚举来操作集合。此外,还列举了集合的多种常用方法,如添加元素(add和update)、删除元素(remove)、集合的运算(并集、交集、差集、对称差集、子集和父集的判断)等。"
在这篇文章中,Python的集合(set)是一个关键主题。集合是一种无序且不允许元素重复的数据结构,常用于去除重复项、进行特定的数学运算(如并集、交集和差集)等。集合可以通过以下几种方式初始化:
1. 初始化空集合:`emptySet = set()`
2. 初始化包含值的集合:`date = {'a', 'b', 'c', 'd'}`
集合的特性包括:
- 去重:集合可以快速删除列表中的重复值,例如,通过`list(set(listname))`可以实现列表去重。
- 成员操作符:集合支持`in`和`not in`操作符来检查元素是否存在于集合中。
- for循环:可以遍历集合中的所有元素。
- 枚举:可以获取元素及其索引,尽管集合本身是无序的。
集合的方法主要包括:
- 增加元素:`.add(x)`用于添加单个元素,如果元素已经存在,不会抛出错误;`.update([x1, x2, x3])`用于添加多个元素。
- 删除元素:`.remove(value)`用于移除指定元素,如果元素不存在会引发`KeyError`异常。
此外,集合还支持各种集合运算,如:
- 并集(Union):`.union(other_set)`或使用`|`操作符。
- 交集(Intersection):`.intersection(other_set)`或使用`&`操作符。
- 差集(Difference):`.difference(other_set)`或使用`-`操作符。
- 对称差集(Symmetric Difference):`.symmetric_difference(other_set)`或使用`^`操作符。
- 子集和父集测试:`.issubset(other_set)`和`.issuperset(other_set)`分别用于判断一个集合是否是另一个集合的子集或父集。
元组、列表和字典是Python中的其他重要数据结构。元组是有序且不可变的,而列表是有序且可变的,两者都支持索引、切片和连接操作。字典则是一种键值对的数据结构,支持通过键来访问和修改值。这些数据结构各有特点,适用于不同的编程需求。
2021-12-03 上传
2022-09-29 上传
2013-08-19 上传
2023-11-21 上传
2023-06-01 上传
2023-05-31 上传
2023-06-06 上传
2023-12-03 上传
2023-07-16 上传
weixin_38732924
- 粉丝: 1
- 资源: 931
最新资源
- cpu-clock-ticks:纯javascript实现以获取`sysconf(_SC_CLK_TCK))`值
- 十字路口:中国金融科技的新篇章》.rar
- think-config:配置ThinkJS 3.x
- Excel模板00科目汇总表.zip
- 毕业设计&课设--超市供销存管理系统,超市管理系统,供销存管理系统,进销存,JAVA+MySQL毕业设计.zip
- 高光谱图像分解:卷积神经网络的高光谱图像分解(无分叉,半成品)
- pex-helpers:为 pex 库调试网格生成器
- goertzeljs:Goertzel算法的纯JavaScript实现
- 同心视界-VR未来课堂-2019.4-51页.rar
- java_practice
- react-native-luna-star-prnt:React适用于LunaPOS的本机StarPRNT库
- Excel模板收据模板(样本).zip
- 毕业设计&课设--毕业设计之网上订餐系统.zip
- Real-time-log-analysis-system:基于spark stream + flume + kafka + hbase的实时日志处理分析系统(分为控制台版本和基于springboot,Echarts等的Web UI可视化版本)
- hyper-json:带有链接的 Json!
- 漂亮的配置x标准