Python3 集合set操作详解
144 浏览量
更新于2024-08-29
收藏 141KB PDF 举报
"Python3集合set入门基础"
Python3中的集合(set)是一种数据结构,它存储了一组不重复的元素,这些元素是无序的。集合的创建可以通过两种方式:使用大括号 `{}` 或调用内置的 `set()` 函数。然而,需要注意的是,空集合必须使用 `set()` 创建,而不能使用 `{}`,因为后者会创建一个空字典。
集合与字典之间存在一定的关系,虽然它们都是无序的数据结构,但字典是由键值对组成,而集合只包含单一的元素。集合的一个显著特点是其元素的唯一性,这意味着集合内的每个元素都是独一无二的,不会出现重复。此外,集合不支持索引访问,即不能像列表那样通过索引来获取特定位置的元素。
创建集合的语法如下:
```python
parame = {value01, value02, ...}
```
或者
```python
set(value)
```
例如:
```python
num1 = {1, 2, 3, 4}
num2 = set(['q', 'w', 'e', 'r'])
```
集合还提供了多种操作方法,如添加元素、删除元素、集合间运算等。添加元素可以使用 `add()` 方法:
```python
s.add(x)
```
这将x添加到集合s中,如果x已经存在于集合中,该操作不会执行任何改变。
集合间的运算包括交集、并集、差集和对称差集:
- 交集:`a & b` 返回同时存在于集合a和b中的元素。
- 并集:`a | b` 返回集合a或b中任意一个集合的所有元素。
- 差集:`a - b` 返回存在于集合a但不在集合b中的元素。
- 对称差集:`a ^ b` 返回既不在a又不在b,或在a不在b,或在b不在a的元素。
例如:
```python
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a & b # 交集 {'a', 'c'}
>>> a | b # 并集 {'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a - b # 差集 {'r', 'd', 'b'}
>>> a ^ b # 对称差集 {'r', 'd', 'b', 'm', 'z', 'l'}
```
集合还支持集合推导式,类似于列表推导式,用于快速创建新的集合:
```python
a = {x for x in 'abracadabra' if x not in 'abc'}
```
上面的代码将创建一个只包含不在'abc'中的字符的新集合。
集合在处理数据去重、快速查找成员以及集合运算等方面非常有用,是Python编程中一个强大的工具。在实际编程中,可以根据需求灵活运用集合来优化代码逻辑和提高效率。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2023-06-13 上传
2022-12-07 上传
2021-06-18 上传
2020-12-21 上传
2022-06-04 上传
2021-03-18 上传
weixin_38659955
- 粉丝: 4
- 资源: 915
最新资源
- usbview-开源
- Night Mode Pro-crx插件
- 成熟:用于RISC-V ISA的图形处理器仿真器和程序集编辑器
- web_scrapping:网页抓取项目
- PickColor.zip_图形图像处理_C#_
- c语言,CRC-8(只验证单字节)和crc-16(包含单个和多个字节)
- Markdown-Writer:一个简单的markdown编写器,基于react
- visual c++ vc创建系统服务,这个类可将指定的进程变为服务.zip
- megactl-开源
- LeetCode
- 微信支付分标志(2).zip
- qzxing:Zxing库的QtQML包装器库。 一维二维条码图像处理库
- mlbook:免费在线书籍《从头开始学习机器学习》的存储库(下面的链接!)
- recepcionRadios:西当玛广播电台维丹塔
- matlab.rar_matlab例程_matlab_
- 数据库系统原理及MySQL应用教程习题答案.zip