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()                # 清空集合
相关推荐
2601_962097362 小时前
GraphQL,Grafana和Dash
python·grafana·数据可视化·graphql·dash
吴声子夜歌3 小时前
ApacheCommons——commons-pool2(高性能通用对象池框架)
java·开发语言·apache
kruptos8 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
吴声子夜歌8 小时前
ApacheCommons——commons-cli(命令行参数解析)
java·开发语言·apache
benchmark_cc9 小时前
REST API 和 Python SDK 应该怎么选?量化交易数据接口选型实战
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
王的宝库9 小时前
Go 项目结构:从单文件到标准工程布局
开发语言·后端·golang
Tairitsu_H10 小时前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现
泡海椒10 小时前
JQuick-Curl 性能分析:并发场景下的性能表现与调优,第三方接口调用不只要快写也要稳跑
java·开发语言·okhttp
小智老师PMP10 小时前
2026深度解析|PMP第八版与NPDP核心侧重点本质区别(管理类证书怎么选)
开发语言·分布式·算法·职场和发展·产品经理
2601_9623824311 小时前
python快乐编程网络爬虫课后答案
python·网络爬虫·学习工具·课后答案·刷题app