Python数据结构:集合
2018-08-26 17:30:27来源:博客园 阅读 ()
- 集合的定义
使用大括号,并且里面必须有初始值,否则是dict字典类型
- 集合的特征
集合内部的元素无序,所以不能使用索引、切片等操作
集合内部的元素具有唯一性,不允许元素重复出现
集合内部的元素,只能存放int, float, str, tuple等必须是可哈希的数据,set类型本身不可哈希
s1 = {1,2,3,'a','b','c',7,8,9} s2 = {} print(type(s1)) #输出<class 'set'> print(type(s2)) #输出<class 'dict'> for i in s1: print(i,end=' ') #输出1 2 3 b 7 8 9 a c,可见set是无序的
- 多循环的集合内涵
s1 = {1,2,3} s2 = {'i', 'love', 'you'} s3 = {m * n for m in s2 for n in s1} #相当于把s2中的每个元素乘以1/2/3 print(s3) #输出{'iii', 'lovelove', 'you', 'youyou', 'i', 'youyouyou', 'ii', 'love', 'lovelovelove'}
- 删除元素
s = {'a','b','c','d','e','f'} # s.remove('k') #remove删除不存在的元素报错keyerror s.discard('k') #discard删除不存在的元素不报错,只是删除失败而已
- 交叉并补
交集intersection
差集difference
并集union
子集issubset:检查一个集合是否为另一个集合的子集
超集issuperset:检查一个集合是否为另一个集合的超集(如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S1就是S2的一个超集,反过来,S2是S1的子集)
s1 = {1,2,3,4,5,6} s2 = {5,6,7,8,9,0} s3 = s1.intersection(s2) #s1与s2的交集 print(s3) #输出{5, 6} s4 = s1.difference(s2) #s1与s2的差集,相当于s1-s2 print(s4) #输出{1, 2, 3, 4} s5 = s1.union(s2) #s1与s2的并集 print(s5) #输出{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} i1 = s1.issubset(s2) #判断s2是否为s1的子集,i1为False i2 = s1.issuperset(s2) #判断s2是否为s1的超集,i2为False
- 冰冻集合
不可以进行任何修改操作的集合,其他属性与集合完全一致。
s = {1,2,3} s = frozenset(s) print(s) #输出frozenset({1, 2, 3})
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Python数据结构:元组
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash