python 集合
一. 创建集合
创建集合使用`{}`或`set()`, 但是如果要创建空集合只能使用`set()`,因为`{}`用来创建空字典。
s1 = {10, 20, 30, 40, 50} print(s1) # {50, 20, 40, 10, 30} s2 = {10, 30, 20, 10, 30, 40, 30, 50} print(s2) # {50, 20, 40, 10, 30} s3 = set('abcdefg') print(s3) # {'e', 'd', 'a', 'b', 'g', 'c', 'f'} s4 = set() print(type(s4)) # set s5 = {} print(type(s5)) # dict
注意:集合的元素无序不重复
二. 常见操作方法
1. add()
s1 = {10, 20} s1.add(100) s1.add(10) print(s1) # {100, 10, 20}
2. update() 新增一个序列
s1 = {10, 20} # s1.update(100) # 报错TypeError: 'int' object is not iterable s1.update([100, 200]) s1.update('abc') print(s1)
注意:参数必须为一个序列,否则报错
3. remove()
s1 = {10, 20} s1.remove(10) print(s1) # {20} s1.remove(30) # KeyError: 30 print(s1)
注意:一处不存在的数据会报错
4. discard(),删除集合中的指定数据,如果数据不存在也不会报错。
s1 = {10, 20} s1.discard(10) print(s1) # {20} s1.discard(10) print(s1) # {20}
5. pop() ,随机删除集合中的某个数据,并返回这个数据
s1 = {10, 20, 30, 40, 50} del_num = s1.pop() print(del_num) # 50 print(s1) # {20, 40, 10, 30} s1 = set() s1.pop() # KeyError: 'pop from an empty set'
注意:空集合使用pop()会报错
6. 判断元素是否存在
- in:判断数据在集合序列
- not in:判断数据不在集合序列
s1 = {10, 20, 30, 40, 50} print(10 in s1) # True print(10 not in s1) # False
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构