收藏 分享(赏)

《Python语言程序设计》课件4 Python集合数据类型-1.pptx

上传人:bubibi 文档编号:21797224 上传时间:2024-05-23 格式:PPTX 页数:11 大小:123.22KB
下载 相关 举报
《Python语言程序设计》课件4 Python集合数据类型-1.pptx_第1页
第1页 / 共11页
《Python语言程序设计》课件4 Python集合数据类型-1.pptx_第2页
第2页 / 共11页
《Python语言程序设计》课件4 Python集合数据类型-1.pptx_第3页
第3页 / 共11页
《Python语言程序设计》课件4 Python集合数据类型-1.pptx_第4页
第4页 / 共11页
《Python语言程序设计》课件4 Python集合数据类型-1.pptx_第5页
第5页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、集合集合集集集集合合合合(set)(set)是是是是不不不不重重重重复复复复元元元元素素素素的的的的无无无无序序序序集集集集,类类类类似似似似于于于于数数数数学学学学中中中中的的的的集集集集合合合合概概概概念念念念,可可可可对对对对其其其其进进进进行行行行交交交交、并并并并、差差差差等等等等运运运运算算算算。它它它它兼兼兼兼具具具具了了了了列列列列表表表表和和和和字字字字典典典典的一些性质。的一些性质。的一些性质。的一些性质。集集集集合合合合有有有有类类类类似似似似字字字字典典典典的的的的特特特特点点点点:用用用用花花花花括括括括号号号号“”来来来来定定定定义义义义,其其其其元元元元素素素素是

2、是是是非非非非序序序序列列列列类类类类型型型型的的的的数数数数据据据据,也也也也就就就就是是是是没没没没有有有有顺顺顺顺序序序序,并并并并且且且且集集集集合合合合中中中中的的的的元元元元素素素素不不不不可可可可重重重重复复复复,类类类类似似似似于于于于字字字字典典典典中中中中的的的的键键键键。集集集集合合合合的的的的内内内内部部部部结结结结构构构构与与与与字字字字典相似,区别是典相似,区别是典相似,区别是典相似,区别是“只有键没有值只有键没有值只有键没有值只有键没有值”。另另另另一一一一方方方方面面面面,集集集集合合合合也也也也具具具具有有有有一一一一些些些些列列列列表表表表的的的的特特特特点

3、点点点:持持持持有有有有一一一一系系系系列列列列元元元元素素素素,并并并并且且且且可可可可原原原原处处处处修修修修改改改改。由由由由于于于于集集集集合合合合是是是是无无无无序序序序的的的的,不不不不记记记记录录录录元元元元素素素素位位位位置置置置或或或或者者者者 插插插插 入入入入 点点点点,因因因因 此此此此 不不不不 支支支支 持持持持 索索索索 引引引引、分分分分 片片片片 或或或或 其其其其 他他他他 类类类类 似似似似 序序序序 列列列列(sequence-like)(sequence-like)的操作。的操作。的操作。的操作。集合集合的创建的创建在在在在PythonPython中中

4、中中,创创创创建建建建集集集集合合合合有有有有两两两两种种种种方方方方式式式式:一一一一种种种种是是是是用用用用一一一一对对对对花花花花括括括括号号号号将将将将多多多多个个个个用用用用逗逗逗逗号号号号分分分分隔隔隔隔的的的的数数数数据据据据括括括括起起起起来来来来;另另另另外外外外一一一一种种种种是是是是使使使使用用用用set()set()函函函函数数数数,该该该该函函函函数数数数可可可可以以以以将将将将字字字字符符符符串串串串、列列列列表表表表、元元元元组组组组等等等等类类类类型型型型的的的的数数数数据据据据转转转转换换换换成集合类型的数据。成集合类型的数据。成集合类型的数据。成集合类型的数

5、据。1.1.直接使用直接使用直接使用直接使用“”创建创建创建创建例例例例4.33 4.33 集合创建举例集合创建举例集合创建举例集合创建举例 s3=1,2,3,4,5 s3=1,2,3,4,5 s3 s31,2,3,4,51,2,3,4,5 s4=set()s4=set()#注注注注意意意意创创创创建建建建空空空空集集集集合合合合要要要要用用用用set()set()而而而而非非非非,若用若用若用若用,将创建空字典,将创建空字典,将创建空字典,将创建空字典 s4 s4set()set()集合集合的创建的创建2.2.由由由由字符串创建字符串创建字符串创建字符串创建用函数用函数用函数用函数set(s

6、tr)set(str)将将将将strstr中的字符拆开以形成集合。例如中的字符拆开以形成集合。例如中的字符拆开以形成集合。例如中的字符拆开以形成集合。例如:s1=set(hellopython)s1=set(hellopython)s1 s1n,p,y,o,e,t,l,hn,p,y,o,e,t,l,h注注注注意意意意:“hellopython”hellopython”中中中中包包包包含含含含两两两两个个个个ll、两两两两个个个个oo和和和和两两两两个个个个hh,但但但但在在在在s1s1中中中中,l l、o o和和和和h h分分分分别别别别只只只只有有有有一一一一个个个个,即即即即集集集集合合合

7、合创创创创建建建建时时时时自自自自动动动动去除了重复字符。去除了重复字符。去除了重复字符。去除了重复字符。集合集合的创建的创建3.3.由列表或元组创建由列表或元组创建由列表或元组创建由列表或元组创建用用用用函函函函数数数数set(seq)set(seq)创创创创建建建建集集集集合合合合,参参参参数数数数可可可可以以以以是是是是列列列列表表表表或或或或元元元元组组组组,在在在在下下下下面面面面例例例例子子子子中中中中,调调调调用用用用set()set()并并并并传传传传入入入入listlist,将将将将listlist的的的的元元元元素素素素作作作作为为为为集集集集合合合合的元素。的元素。的元素

8、。的元素。s2=set(1,name,2,age,hobby)s2=set(1,name,2,age,hobby)s2 s21,2,name,hobby,age1,2,name,hobby,age s2=set(1,2,3)s2=set(1,2,3)s2 s21,2,31,2,3注注注注意意意意,由由由由于于于于集集集集合合合合内内内内部部部部存存存存储储储储的的的的元元元元素素素素是是是是无无无无序序序序的的的的,因因因因此此此此输输输输出出出出的的的的顺顺顺顺序和原列表的顺序有可能是不同的。序和原列表的顺序有可能是不同的。序和原列表的顺序有可能是不同的。序和原列表的顺序有可能是不同的。集合

9、集合的创建的创建4.4.集合的遍历集合的遍历集合的遍历集合的遍历集集集集合合合合与与与与forfor循循循循环环环环语语语语句句句句配配配配合合合合使使使使用用用用,可可可可实实实实现现现现对对对对集集集集合合合合各各各各个个个个元元元元素素素素的的的的遍历。遍历。遍历。遍历。例例例例4.34 4.34 集合的遍历示例。集合的遍历示例。集合的遍历示例。集合的遍历示例。程序如下:程序如下:程序如下:程序如下:s=1,2,3,4s=1,2,3,4t=0t=0for x in s:for x in s:print(x,end=t)print(x,end=t)t+=xt+=xprint(t)print

10、(t)程程程程序序序序输输输输出出出出集集集集合合合合中中中中各各各各个个个个元元元元素素素素值值值值,并并并并计计计计算算算算出出出出累累累累加加加加和和和和。运运运运行行行行结结结结果果果果如下如下如下如下:1 12 23 34 41010集合的集合的修改修改集合集合的修改的修改(1)(1)用用用用set.add(x)set.add(x)方法向集合方法向集合方法向集合方法向集合setset中添加元素中添加元素中添加元素中添加元素x x。例如:。例如:。例如:。例如:a_set=1,2 a_set=1,2 a_set.add(Python)a_set.add(Python)a_set a_s

11、etPython,1,2Python,1,2 a_set.add(alice,bob)a_set.add(alice,bob)#注注注注意意意意向向向向集集集集合合合合添添添添加加加加列列列列表的操作会导致错误表的操作会导致错误表的操作会导致错误表的操作会导致错误Traceback(most recent call last):Traceback(most recent call last):File,line 1,in File,line 1,in a_set.add(alice,bob)a_set.add(alice,bob)TypeError:unhashable type:listTy

12、peError:unhashable type:list集合集合的修改的修改(2)(2)用用用用set.update(a_set)set.update(a_set)方方方方法法法法使使使使用用用用集集集集合合合合a_seta_set更更更更新新新新原原原原集集集集合,即把合,即把合,即把合,即把a_seta_set中的元素放入原集合中。例如:中的元素放入原集合中。例如:中的元素放入原集合中。例如:中的元素放入原集合中。例如:b_set=alice b_set=alice a_set=bob a_set=bob b_set.update(a_set)b_set.update(a_set)b_se

13、t b_setbob,alicebob,alicea_set#a_seta_set#a_set没有变没有变没有变没有变bobbob集合集合的修改的修改(3)(3)用用用用set.pop()set.pop()方方方方法法法法从从从从setset中中中中任任任任意意意意选选选选择择择择一一一一个个个个元元元元素素素素,删删删删除除除除并并并并返返返返回回回回该该该该元元元元素素素素。注注注注意意意意:不不不不可可可可指指指指定定定定要要要要删删删删除除除除的的的的元元元元素素素素,否否否否则则则则将将将将报报报报错错错错(pop(pop()()不能有参数不能有参数不能有参数不能有参数),若,若,若

14、,若setset是空也会报错。例如:是空也会报错。例如:是空也会报错。例如:是空也会报错。例如:a_set=Python,c#,java,perl a_set=Python,c#,java,perl a_set.pop()a_set.pop()PythonPython a_set a_setperl,c#,javaperl,c#,java a_set.pop()a_set.pop()perlperl集合集合的修改的修改(4)(4)set.remove(x)set.remove(x)与与与与set.discard(x)set.discard(x)方方方方法法法法,两两两两者者者者的的的的作作作作

15、用用用用都都都都是是是是删删删删除除除除集集集集合合合合中中中中元元元元素素素素x x,不不不不同同同同的的的的是是是是,对对对对于于于于set.remove(x)set.remove(x),x x必必必必须须须须是是是是setset中中中中的的的的元元元元素素素素,否否否否则则则则报报报报错错错错。而而而而对对对对于于于于set.discard(x)set.discard(x),若,若,若,若x x不是集合中的元素,则什么也不做。例如:不是集合中的元素,则什么也不做。例如:不是集合中的元素,则什么也不做。例如:不是集合中的元素,则什么也不做。例如:a_set=set(abcde)a_set=set(abcde)a_set a_setc,e,b,d,ac,e,b,d,a a_set.remove(b)a_set.remove(b)a_set a_setc,e,d,ac,e,d,a集合集合的修改的修改(5)(5)用用用用set.clear()set.clear()方法删除集合中的所有元素。例如:方法删除集合中的所有元素。例如:方法删除集合中的所有元素。例如:方法删除集合中的所有元素。例如:a_set=1,2,3 a_set=1,2,3 a_set.clear()a_set.clear()a_set a_setset()set()

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高中资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报