python学习笔记——集合
创建集合
使用工厂方法 set()和 frozenset():
>>> s = set ( 'cheeseshop' ) >>> s set ([ 'c' , 'e' , 'h' , 'o' , 'p' , 's' ]) >>> t = frozenset ( 'bookshop' ) >>> t frozenset ([ 'b' , 'h' , 'k' , 'o' , 'p' , 's' ]) >>> type (s) < type 'set' > >>> type (t) < type 'frozenset' > |
更新集合
用各种集合内建的方法和操作符添加和删除集合的成员:
>>> s.add( 'z' ) >>> s set ([ 'c' , 'e' , 'h' , 'o' , 'p' , 's' , 'z' ]) >>> s.update( 'pypi' ) >>> s set ([ 'c' , 'e' , 'i' , 'h' , 'o' , 'p' , 's' , 'y' , 'z' ]) >>> s.remove( 'z' ) >>> s set ([ 'c' , 'e' , 'i' , 'h' , 'o' , 'p' , 's' , 'y' ]) >>> s - = set ( 'pypi' ) >>> s set ([ 'c' , 'e' , 'h' , 'o' , 's' ]) |
删除集合
del s |
成员关系 (in, not in)
>>> s = set ( 'cheeseshop' ) >>> t = frozenset ( 'bookshop' ) >>> 'k' in s False >>> 'k' in t True >>> 'c' not in t True |
集合等价/不等价
>>> s = = t False >>> s ! = t True >>> u = frozenset (s) >>> s = = u True >>> set ( 'posh' ) = = set ( 'shop' ) True |
差补/相对补集( – )
两个集合(s 和t)的差补或相对补集是指一个集合C,该集合中的元素,只属于集合s,而不属于集合t。差符号有一个等价的方法,difference().
>>> s - t set ([ 'c' , 'e' ]) |
对称差分( ^ ):对称差分是集合的XOR
利用集合去除列表中的重复元素
>>> xs = [ 5 , 8 , 5 , 1 , 1 , 4 , 2 , 4 , 3 , 2 ] >>> set (xs) set ([ 1 , 2 , 3 , 4 , 5 , 8 ]) >>> sorted ( set (xs), key = xs.index) # 保持原来的顺序 [ 5 , 8 , 1 , 4 , 2 , 3 ] |
如果您觉得此文有帮助,可以打赏点钱给我支付宝1669866773@qq.com ,或扫描二维码


机器瞎学/数据掩埋/模式混淆/人工智障/深度遗忘/神经掉线/计算机幻觉/专注单身二十五年
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义