python基础7--集合
集合set
Python的set集合是一个无序不重复元素集。基本功能包括关系测试和消除重复元素。集合对象还支持union(并集)、intersection(交集)、difference(差集) 和 sysmmetric differencr(对称差集)等数学运算。
set 支持 x in set, len(set), for x in set。作为无序集合,set不记录元素的下标。
事例:
一、集合操作
1.创建集合
1 2 3 4 5 | set1 = set ( 'bestberg' ) print (set1) #输出 { 'b' , 'g' , 'e' , 't' , 'r' , 's' } # b 去重了 |
2.集合添加 add将要传入的元素作为一个整体添加到集合中
1 a = set('lion')
2 a.add('rabbit')
3 print(a)
3.集合添加 update 将要传入的元素拆分,作为个体插入到集合中
1 b = set('lion')
2 b.update('rabbit')
3 print(b)
4.集合删除 remove
1 a = set('lion')
2 a.add('rabbit')
3 print(a)
4
5 a.remove('rabbit')
6 print(a)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | # pop() >>> set1 { 1 , 2 , 3 , 4 , 5 } >>> set1.pop() 1 # set1 >>> set1 { 2 , 3 , 4 , 5 } # discard >>> set1.discard( 3 ) >>> set1 { 2 , 4 , 5 } >>> set1.discard( 1 ) >>> set1 { 2 , 4 , 5 } # discard在删除不存在的元素时,不会报错 |
二、集合关系
1.并集(去重)
1 a = {1,2,3,4,33,66} 2 b = {3,4,5,6,33} 3 4 print(a.union(b)) # print(a | b)
{33, 2, 66, 3, 4, 1, 5, 6} #相同部分只保留一份
2.交集
1 a = {1,2,3,4,33,66} 2 b = {3,4,5,6,33} 3 4 print(a.intersection(b)) 5 print(a & b)
{33, 3, 4}
{33, 3, 4}
3.差集
1 a = {1,2,3,4,33,66}
2 b = {3,4,5,6,33}
3
4 print(a.difference(b))
5 print(b.difference(a)) # print(b - a)
{1, 2, 66}
{5, 6}
4.相对补集
1 a = {1,2,3,4,33,66} 2 b = {3,4,5,6,33} 3 4 print(a.symmetric_difference(b)) #去掉相同的元素 5 print(b.symmetric_difference(a))
{1, 2, 5, 6, 66}
{2, 66, 5, 1, 6}
5.子集 和 父集
1 a = {1,2,3,4,33,66}
2 b = {3,4,5,6,33}
3
4 print(a.issubset(b)) # 子集
5 print(b.issuperset(a)) # 父集
False
False
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!