Python集合简介

Python 集合(set)是一种无序、可变、元素唯一的数据结构,类似于数学中的集合。它使用大括号 {} 或 set() 函数创建,常用于去重、成员关系测试和集合运算。

主要特性

  • 元素唯一 :自动去除重复值。
  • 无序 :元素没有索引,不支持切片或下标访问。
  • 可变 :可添加或删除元素,但元素本身必须是不可变类型(如整数、字符串、元组),因为集合要求元素可哈希(hashable)。
  • 高效 :成员判断(in)和集合运算的速度非常快。

创建集合

python

复制代码
# 使用大括号
复制代码
s1 = {1, 2, 3}
复制代码
复制代码
# 使用 set() 构造函数,参数为可迭代对象
复制代码
s2 = set([1, 2, 2, 3])   # {1, 2, 3}
复制代码
s3 = set("hello")        # {'h', 'e', 'l', 'o'}
复制代码
复制代码
# 空集合只能用 set(),{} 是空字典
复制代码
empty_set = set()

添加和删除元素

python

复制代码
s = {1, 2, 3}
复制代码
s.add(4)                 # {1, 2, 3, 4}
复制代码
s.update([5, 6])         # 添加多个元素,{1,2,3,4,5,6}
复制代码
s.remove(2)              # 删除元素,若不存在则报错 KeyError
复制代码
s.discard(10)            # 删除元素,若不存在不会报错
复制代码
pop_element = s.pop()    # 随机删除并返回一个元素
复制代码
s.clear()                # 清空集合
相关推荐
码云骑士1 天前
【3.Java基础】Java运算符详解:从算数运算到逻辑判断,一篇文章全部掌握
java·开发语言
雪落漂泊1 天前
C++ 继承与多态(下)
开发语言·c++
川冰ICE1 天前
JavaScript工程化②|Webpack5基础配置,打包你的第一个项目
开发语言·javascript·ecmascript
YHHLAI1 天前
JavaScript 同步异步精讲:单线程、事件循环、Promise 执行机制
开发语言·javascript·ecmascript
yijianace1 天前
Python爬虫实战:ThreadPoolExecutor多线程采集书籍信息与图片下载
开发语言·爬虫·python
资深流水灯工程师1 天前
PySide6 + Qt Designer + PyCharm 完整开发流程
开发语言·qt·pycharm
阿旭超级学得完1 天前
Linux基础指令 四(apt,vim,git,cgdb)
linux·服务器·开发语言·数据结构·c++·git·vim
Invictus_cl1 天前
条纹圆形进度条(彩虹色)
开发语言·前端·javascript
Vallelonga1 天前
Rust 中的枚举
开发语言·rust
兰令水1 天前
leecodecode【状态机DP】【2026.6.9打卡-java版本】
java·开发语言·算法