博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
006_集合
阅读量:7068 次
发布时间:2019-06-28

本文共 2449 字,大约阅读时间需要 8 分钟。

1,集合:   1.1,集合与字典一样也是用{},但是仅仅是dic = {}创建是字典
print(type({}))     #结果:
set1 = {1, 2, 3}print(type(set1)) #结果:
  1.2可变的数据类型,但是它里面的元素必须是不可变的数据类型。   1.3集合元素无序,不重复。
#以下错误的写法list是可变的数据类型set1 = {1, 2, [4, 5], {'name': 'py'}, (3, 4)}#TypeError: unhashable type: 'list'
2,创建集合
set1 = set()set2 = set({1, 2, 3})print(type(set1))      #结果:
print(type(set2)) #结果:
set3 = {1 ,2, 3}print(type(set3)) #结果:
3,增加   3.1,add() 增加,位置随机,添加已有的无效
set1 = {1, 2, 3, '女神'}set1.add('女神')print(set1)       #结果:{1, 2, 3, '女神'}
  3.2,update() 迭代(分解)随机位置增加,添加已有的无效
set1 = {1, 2, 3, '女'}set1.update('女神')print(set1)         #结果:{'女', 1, 2, 3, '神'}
4,删除   4.1,pop() 随机删除并返回值,set为空则报错
set1 = {1, 2, 3, '女'}print(set1.pop())print(set1)
  4.2,remove()  按元素删除,元素不存在则报错
set1 = {1, 2, 3, '女'}set1.remove('女')print(set1)
5,清空,删除集合
set1 = {1, 2, 3, '女'}set1.clear()    #清空setprint(set1)     #结果:set()del set1        #删除set
6,查     集合是无序的,每次输出顺序不一样
set1 = {1, 2, 3, '女'}for i in set1:    print(i,end=' ')    #结果:女 1 2 3
7,交集
set1 = {1, 2, 3, 4, 5}set2 = {4, 5, 6, 7, 8}set3 = set1 & set2print(set3)         #>>>{4, 5}print(set1.intersection(set2))  #>>>{4, 5}
8,并集
set1 = {1, 2, 3, 4, 5}set2 = {4, 5, 6, 7, 8}print(set1 | set2)        #>>>{1, 2, 3, 4, 5, 6, 7, 8}print(set1.union(set2))   #>>>{1, 2, 3, 4, 5, 6, 7, 8}
9,反交集
set1 = {1, 2, 3, 4, 5}set2 = {4, 5, 6, 7, 8}print(set1 ^ set2)      #>>>{1, 2, 3, 6, 7, 8}print(set1.symmetric_difference(set2))   #>>>{1, 2, 3, 6, 7, 8}
10,差集
set1 = {1, 2, 3, 4, 5}set2 = {4, 5, 6, 7, 8}print(set1 - set2)      #>>>{1, 2, 3}     #set1独有的print(set1.difference(set2))    #>>>{1, 2, 3}
11,子集
set1 = {1, 2, 3}set2 = {1, 2, 3, 7, 8}print(set1 < set2)      #>>>True    #set1是set2的子集print(set1.issubset(set2))  #>>>True
12,超集
set1 = {1, 2, 3}set2 = {1, 2, 3, 7, 8}print(set2 > set1)      #>>>True      #set2是set1的子集print(set2.issuperset(set1))  #>>>True
13,通过集合完成列表去重
lis = [1, 3, 4, 3, 5, 5, 2]set1 = set(lis)print(set1)         #>>>{1, 2, 3, 4, 5}lis = list(set1)print(lis)          #>>>[1, 2, 3, 4, 5]
14,将集合变成不可变集合
set1 = frozenset({1,2,3})print(set1,type(set1))      #>>>frozenset({1, 2, 3}) 
s = frozenset('colour')print(s,type(s)) #>>>frozenset({'l', 'u', 'c', 'o', 'r'})
s = frozenset([1, 3, 4, 3, 5, 5, 2])print(s,type(s)) #>>>frozenset({1, 2, 3, 4, 5})

  

转载于:https://www.cnblogs.com/eternity-twinkle/p/10479165.html

你可能感兴趣的文章
【C#公共帮助类】 ToolsHelper帮助类
查看>>
八皇后问题
查看>>
切蛋糕
查看>>
关于对于CSS的字体单位
查看>>
TCP协议学习总结(上)
查看>>
敏捷 扑克上的时间估算(转)
查看>>
从JDBC程序看为什么需要Mybatis
查看>>
jQuery Ajax
查看>>
压缩感知中的数学知识:稀疏、范数、符号arg min
查看>>
《JavaScript高级程序设计》笔记
查看>>
刚刚在园里看到的一个简单的做连接字符串的方法.
查看>>
JQ_简单瀑布流
查看>>
测试管理-测试问题监控
查看>>
thinkphp的taglib的使用方法
查看>>
tecplot批量导出图片_Fluent 后处理软件Tecplot宏批量处理cas,dat为图片
查看>>
锂电池放空后充不进电_充电锂电池,只几个月不用,为什么就再也充不进电了?...
查看>>
golang mutex 初始化_Golang连接池的几种实现案例
查看>>
docker可以把应用及其相关的_等离子表面处理机相关应用及其特点
查看>>
发电厂电气部分第三版pdf_喜讯、大唐锡林浩特发电厂660mw机组投产运行
查看>>
mysql 数据库操作通用类_mysql 数据库操作通用类
查看>>