day07
2019-05-17 00:01:42来源:博客园 阅读 ()
1、集合的介绍
集合:可变的数据类型,他里面的元素必须是不可变的数据类型,无序,不重复。
1.1、集合是如何定义的
1 #集合的定义方式1 2 set1 = set({1,2,3}) 3 #集合的定义方式2 4 set2 = {1,2,3} 5 print(set1,set2) 6 7 #这种会报错,因为集合中的元素必须是可哈希的,也即是不可变的 8 ''' 9 set3 = {1,[2,3],{4,5}} 10 print(set3) 11 '''
1.2、集合的增删查
集合没有改,因为集合中的元素是不可变的。
1 # 集合的增加 2 set4 = {'a','b','c','d'} 3 4 # add() 5 set4.add('e') 6 print(set4) 7 # result:{'b', 'a', 'd', 'e', 'c'}---验证了集合的无序 8 9 # update()---类似于extend,迭代添加元素 10 set4.update('fgh') 11 print(set4) 12 # result:{'d', 'g', 'a', 'c', 'e', 'h', 'b', 'f'}
1 # 集合的删除 2 3 # 1、pop()---随机删除 4 set5 = {'a','b','c','d'} 5 set5.pop() 6 print(set5,set5.pop())# 删除了两次,且其有返回值。 7 # result:{'b', 'd'} a 8 9 # 2、remove()---按元素去删 10 set6 = {'a','b','c','d'} 11 set6.remove('a') 12 print(set6) 13 # result:{'d', 'b', 'c'} 14 15 # 3、clear() 16 set7 = {'a','b','c','d'} 17 set7.clear() 18 print(set7) 19 # result:set() 20 21 # 4、del 22 ''' 23 set8 = {'a','b','c','d'} 24 del set8 25 print(set8) 26 ''' 27 # result:NameError: name 'set8' is not defined
1 # 集合的查 2 set9 = {'a','b','c','d'} 3 for i in set9: 4 print(i) 5 # result: 6 # b 7 # c 8 # a 9 # d
1.3、集合的交集、反交集、并集、差集、子集、超集。
1 # 集合的交集 2 set1 = {1,2,3,4,5} 3 set2 = {4,5,6,7,8} 4 print(set1 & set2) 5 # result:{4,5} 6 print(set1.intersection(set2)) 7 # result:{4,5}
1 # 集合的反交集 2 set1 = {1,2,3,4,5} 3 set2 = {4,5,6,7,8} 4 print(set1 ^ set2) 5 # result:{1, 2, 3, 6, 7, 8} 6 print(set1.symmetric_difference(set2)) 7 # result:{1, 2, 3, 6, 7, 8}
1 # 集合的并集 2 set1 = {1,2,3,4,5} 3 set2 = {4,5,6,7,8} 4 print(set1 | set2) 5 # result:{1, 2, 3, 4, 5, 6, 7, 8} 6 print(set1.union(set2)) 7 # result:{1, 2, 3, 4, 5, 6, 7, 8}
1 # 集合的差集 2 set1 = {1,2,3,4,5} 3 set2 = {4,5,6,7,8} 4 print(set1 - set2) 5 # result:{1, 2, 3} 6 print(set1.difference(set2)) 7 # result:{1, 2, 3}
1 # 集合的子集和超集 2 set1 = {1,2,3} 3 set2 = {1,2,3,4,5,6} 4 print(set1 < set2)# 子集 5 # result:True 6 print(set1.issubset(set2))# 子集 7 # result:True 8 print(set2 > set1)# 超集 9 # result:True 10 print(set2.issuperset(set1))# 超集 11 # result:True
1.4、集合的一个简单小用途,以及不可变集合frozenset的介绍
1 # 集合的用途之一 2 # 将以下列表的重复元素去掉 3 lst = [1,2,3,4,3,1,9,8] 4 print(set(lst)) 5 # result:{1, 2, 3, 4, 8, 9}
1 # set是可变集合,frozenset是不可变集合 2 set1 = set('hello') 3 print(set1,type(set1)) 4 # result:{'h', 'e', 'l', 'o'} <class 'set'> 5 set2 = frozenset('hello') 6 print(set2,type(set2)) 7 # result:frozenset({'e', 'o', 'l', 'h'}) <class 'frozenset'>
原文链接:https://www.cnblogs.com/missdx/p/10877254.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python_0基础开始_day07 2019-08-13
- concurrent.futures模块简单介绍(线程池,进程池) 2019-07-24
- python内置模块介绍(一) 2019-07-24
- ORM 2019-07-24
- python 基础学习笔记(4)--字典 和 集合 2019-07-24
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