(3.6)--Ch6-组合数据类型1.ppt
《(3.6)--Ch6-组合数据类型1.ppt》由会员分享,可在线阅读,更多相关《(3.6)--Ch6-组合数据类型1.ppt(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第6章 组合数据类型6.1组合数据类型概述组合数据类型概述6.2序列类型概述序列类型概述6.3列表类型及操作列表类型及操作6.4集合类型集合类型6.5字典类型及操作字典类型及操作6.6jieba库的使用库的使用6.7文本词频统计文本词频统计6组合数据类型组合数据类型6.1组合数据类型概述组合数据类型概述6.1 组合数据类型概述计计算算机机不不仅仅对对单单个个变变量量表表示示的的数数据据进进行行处处理理,更更多多情况,计算机需要对一组数据进行批量处理。情况,计算机需要对一组数据进行批量处理。例如例如:一一组组单单词词python,data,function,listpython,data,fun
2、ction,list,计计算算并输出每个单词的长度;并输出每个单词的长度;一个学院一个学院的的学生,统计一下男女生比例;学生,统计一下男女生比例;一次实验产生的多组数据的分析一次实验产生的多组数据的分析。6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述6.1 组合数据类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述组合数据类型组合数据类型序列类型序列类型集合类型集合类型映射类型映射类型元元组(组(tuple)字符串(字符串(str)列列表(表(list)集集合(合(set)字字典(典(dict)序列类型是是一一维维元元素素向向量量,元元素素之之间间存存在在先先后
3、后关关系系,通通过过序号序号访问,元素之间访问,元素之间不排他不排他。集合类型是是一一个个元元素素集集合合,元元素素之之间间无无序序,元元素素在在集集合合中中唯一唯一存在。存在。映射类型是是“键键:值值”数数据据项项的的组组合合,每每个个元元素素是是一一个个键值对,表示为键值对,表示为(key:value)(key:value)。典型代表:字典类型。典型代表:字典类型。6.1 组合数据类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述6组合数据类型组合数据类型6.2序列类型概述序列类型概述6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述 字符串
4、(str)用用引号表示引号表示,可看成是,可看成是单一字符单一字符的有序的有序组合。组合。不可变序列不可变序列类型。类型。列表(list)用用表示表示,可使用,可使用多种类型的元素多种类型的元素的的可可变序列变序列类型。列表中的元素类型。列表中的元素可插入、删除、修改等可插入、删除、修改等。元组(tuple)用用()()表示表示,包含包含0个或多个数据项的个或多个数据项的不不可变序列可变序列类型。元组中元素不可以修改。类型。元组中元素不可以修改。三种重要的序列类型:三种重要的序列类型:序列序列类型元素之间存在先后关系,通过类型元素之间存在先后关系,通过序号访问序号访问。元素元素本身也可以是序列
5、类型。本身也可以是序列类型。6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述0 0 BITBIT 1 12 23 34 4-5-5-4-4-3-3-2-2-1-1正向递增序号正向递增序号反向递减序号反向递减序号3.141593.1415910241024(2,3)(2,3)中国中国,9,96组合数据类型组合数据类型-组合数据类型概述组合数据类型概述可以可以访问不能修改不能修改生成副本生成副本6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述序列类型有序列类型有1212个个通用通用的操作符和函数:的操作符和函数:操作符操作符描述描述x
6、ins如果如果x是是s的的元素元素,返回,返回True,否则返回,否则返回Falsexnotins 如果如果x不是不是s的的元素元素,返回,返回True,否则返回,否则返回Falses+t连接连接s和和t(需同类型的序列需同类型的序列)s*n或或n*s 将序列将序列s复制复制n次次si索引索引,返回序列的第返回序列的第i个元素个元素si:j切片切片,返回序列返回序列s第第i到到j(不含不含)个元素的子序列个元素的子序列si:j:k切片切片,返回序列返回序列s第第i到到j(不含不含)个元素的,以个元素的,以k为步数为步数的子序列,的子序列,k为负数则从右往左取元素为负数则从右往左取元素s=pyt
7、hont=123r=s+tprint(r)s=1,2,3t=Pythonr=s+t6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述函数函数描述描述len(s)序列序列s的的元素个数元素个数(长度长度)min(s)序列序列s中的最小元素中的最小元素max(s)序列序列s中的最大元素中的最大元素s.index(x,i,j)序列序列s中从中从i开始到开始到j位置中,第一次出位置中,第一次出现元素现元素x的位置的位置s.count(x)序列序列s中出现中出现x的总次数的总次数6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述序列类型有序列类
8、型有1212个个通用通用的操作符和函数:的操作符和函数:6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述6.2 序列类型概述6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述元元组组(tuple)用用()()可可省省略略)或或tuple()创创建建。元元素素数数据据类类型可以不同。型可以不同。一旦创建就一旦创建就不能被修改不能被修改,不可变不可变。函函数数多多返返回回值值、多多变变量量同同步步赋赋值值、循循环环遍遍历历等等使使用用的的是元组数据类型。是元组数据类型。6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述元组类型元组继承了序列类型的
9、全部元组继承了序列类型的全部通用通用操作,元组类型操作,元组类型没没有自己特有的其他操作有自己特有的其他操作。cr=cat,dog,tigercr(cat,dog,tiger)c=(red,10,cr)c(red,10,(cat,dog,tiger)c-12tigers=tuple(1,2,3)s(1,2,3)6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述元组类型deffun(x):#函数多返回值函数多返回值returnx,x*36组合数据类型组合数据类型-组合数据类型概述组合数据类型概述元组类型a,b=dog,tiger#多变量同步赋值多变量同步赋值a,b=(b,a)#多变量同
10、步赋值,括号可省略多变量同步赋值,括号可省略6组合数据类型组合数据类型-组合数据类型概述组合数据类型概述字符串类型 字字符符串串(str)(str)是是不不可可变变数数据据类类型型。继继承承了了序序列列类类型型的的全全部部通通用用操操作作,还还有有自自己己的的一一些些内内置置的的函函数数和和方方法(第法(第3章)。章)。6组合数据类型组合数据类型6.3列表类型及操作列表类型及操作6.3 列表类型6组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.1 列表类型概述 列列表表(list)(list)属属于于序序列列类类型型,可可包包含含0 0个个或或多多个个元元素素,没有长度限制,元素
11、类型可以不同。没有长度限制,元素类型可以不同。与与元元组组和和字字符符串串不不同同,列列表表的的内内容容是是可可变变的的,可可自自由对列表中数据项进行增加、删除或修改。由对列表中数据项进行增加、删除或修改。列列表表继继承承了了序序列列类类型型的的全全部部通通用用操操作作还还有有自自己己的的一一些操作些操作。V=0,1,2,3,42inV#判断判断2是否在列表是否在列表vlist中中Truelen(V2:)#计算子串长度计算子串长度36组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.1 列表类型概述 列列表表可可以以由由创创建建。通通过过list()list()函函数数可可将将元元
12、组组或或字字符串转化成列表。符串转化成列表。6.3.2 列表类型的定义6组合数据类型组合数据类型-列表类型及操作列表类型及操作ls=4,BIT,10,CS,4ls4,BIT,10,CS,4list(python)p,y,t,h,o,nlist()#返回一个空列表返回一个空列表L=list(red,blue,pink)Lred,blue,pinkV=list(range(5)V0,1,2,3,46组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.2 列表类型的定义 注注意意:将将一一个个列列表表赋赋值值给给另另一一个个列列表表,会会创创建建列列表表变量但不会生成新的列表对象。变量但不
13、会生成新的列表对象。6组合数据类型组合数据类型-列表类型及操作列表类型及操作ls=4,bit,8#用数据赋值用数据赋值产生列表产生列表lslt=ls#lt指向指向ls所指向的数据所指向的数据ls0=0lt0,bit,84,bit,8lslt6.3.2 列表类型的定义函数或方法函数或方法描述描述lsi=x替换列表替换列表ls第第i数据项为数据项为xlsi:j=lt用列表用列表lt替换列表替换列表ls中第中第i到到j项数据(不含项数据(不含第第j项)项)lsi:j:k=lt用列表用列表lt替换列表替换列表ls中第中第i到到j以以k为步长的为步长的数据数据(不含第(不含第j项)项)6.3.3 列表类
14、型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作修改列表元素修改列表元素注:注:以上操作都在原列表进行,不生成新的列表以上操作都在原列表进行,不生成新的列表6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作V=0,1,2,3,4V3=py#修改序号修改序号3的元素值和类型的元素值和类型V0,1,2,py,4V1:4=bit,computerV0,bit,computer,4V:3:2=1,21,bit,2,4操作操作描述描述dellsi:j删除列表删除列表ls第第i到到j项项数据数据lsi:j=dellsi:j:k删除列表删除列表ls第第i到到j以以
15、k为步的数据为步的数据6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作删除列表元素:删除列表元素:ls.clear()删除删除ls中所有元素中所有元素ls.pop(i)将列表将列表ls中第中第i项元素返回并项元素返回并删除,省略删除,省略i指指最最后一项,超出下标报后一项,超出下标报IndexError错错ls.remove(x)删除删除列表中第一列表中第一个出现的元素个出现的元素x,无无,则报错则报错注:注:以上操作都在原列表进行,不生成新的列表以上操作都在原列表进行,不生成新的列表6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操
16、作6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作已知待删除元素的索引时,可使用已知待删除元素的索引时,可使用deldel命令和命令和poppop方法。方法。poppop方法对于删除列表末尾元素最为简单方便。方法对于删除列表末尾元素最为简单方便。知道待删除元素的值时,用知道待删除元素的值时,用removeremove方法。方法。与与deldel命令和命令和removeremove方法不同,方法不同,poppop方法在删除元素的同方法在删除元素的同时会时会“弹出弹出”这个被删除的元素,
17、如果需要可以用一个这个被删除的元素,如果需要可以用一个变量变量“接住接住”它,以便进行进一步的后期操作。它,以便进行进一步的后期操作。pop,del,remove方法比较:方法比较:6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作操作操作描述描述ls.append(x)在列表在列表ls最后增加一个最后增加一个元素元素xls.insert(i,x)在列表在列表ls第第i位置增加位置增加元素元素x6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作添加列表元素:添加列表元素:ls+=lt或或ls.extend(lt)列表列表lt的所有的所
18、有元素元素添加到添加到列表列表ls中。中。单个数据不能添加单个数据不能添加,元组和字符串可以添加元组和字符串可以添加ls*=n更新更新列表列表ls,其元素重复,其元素重复n次次注:以上操作都在原列表进行,不生成新的列表注:以上操作都在原列表进行,不生成新的列表ls=cat,dogls.append(12)cat,dog,12ls.insert(2,lion)cat,dog,lion,126.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作6.3.3 列表类型操作6组合数据类型组合数据类型
19、-列表类型及操作列表类型及操作复制、排序、逆序:复制、排序、逆序:ls.copy()生成一个新列表,复制生成一个新列表,复制ls中所有元素中所有元素ls.reverse()将列表将列表ls中元素原地中元素原地(不生成新列表不生成新列表)逆序逆序ls.sort(reverse=True)对列表中的元素原地排序对列表中的元素原地排序(元素需同类型元素需同类型),默认升序,设置默认升序,设置reverse=True降序降序sorted(ls,reverse=True)内置函数,默认升序排序,内置函数,默认升序排序,设置设置reverse=True降序排序,降序排序,生成新列表。生成新列表。函数或方法
20、函数或方法描述描述6.3.3 列表类型操作6组合数据类型组合数据类型-列表类型及操作列表类型及操作ls=cat,dog,tigerls.reverse()tiger,dog,cat生成新的列表生成新的列表对象象通过通过forin结构结构遍历列表遍历列表:forin:语句块语句块ls=1,2,3,4foreinls:print(e,end=)6.3.4 列表类型应用实例6组合数据类型组合数据类型-列表类型及操作列表类型及操作importturtleastls=red,green,blue,purpleforiinrange(100):t.color(lsi%4)t.circle(i)t.left
21、(90)6.3.4 列表类型应用实例6组合数据类型组合数据类型-列表类型及操作列表类型及操作90916.3.4 列表类型应用实例6组合数据类型组合数据类型-列表类型及操作列表类型及操作L1=1,2,3,4,5L2=list()foriinL1:L2.append(i*i)print(sum(L2)L1=1,2,3,4,5L2=i*iforiinL1print(sum(L2)支持列表、字典、集支持列表、字典、集合、元组等对象。合、元组等对象。求求1-5的自然数的平方和:的自然数的平方和:优雅的列表推导式优雅的列表推导式:6.3.4 列表类型应用实例6组合数据类型组合数据类型-列表类型及操作列表类
22、型及操作6.3.4 列表类型应用实例6组合数据类型组合数据类型-列表类型及操作列表类型及操作 定义空列表定义空列表ltlt 向向ltlt新增新增5 5个元素个元素 修改修改ltlt中第中第2 2个元素个元素 向向ltlt中某位置增加一个元素中某位置增加一个元素 从从ltlt中删除第中删除第1 1个位置的元素个位置的元素 删除删除ltlt中第中第1-31-3位置元素位置元素判断判断ltlt中是否包含数字中是否包含数字0 0向向ltlt新增数字新增数字0 0返回数字返回数字0 0在在ltlt中的索引中的索引ltlt的长度的长度ltlt中最大元素中最大元素清空清空ltlt6组合数据类型组合数据类型-
23、列表类型及操作列表类型及操作课堂练习课堂练习lt=lt+=1,2,3,4,5lt2=6lt.insert(2,7)dellt1dellt1:40inltlt.append(0)lt.index(0)len(lt)max(lt)lt.clear()6组合数据类型组合数据类型-列表类型及操作列表类型及操作6组合数据类型组合数据类型6.4集合集合类型及操作类型及操作6组合数据类型组合数据类型-集合集合类型类型 集集合合类类型型用用大大括括号号表表示示,元元素素间间用用逗逗号号分分隔隔。集集合是合是包含包含0 0个或多个数据项的个或多个数据项的无序无序组合。组合。-集合每个元素唯一,不存在相同元素集合
24、每个元素唯一,不存在相同元素-集合集合是可变数据类型,元素可动态增加、删除是可变数据类型,元素可动态增加、删除集合类型概述 由于集合元素是无序的,集合的打印效果与定义顺由于集合元素是无序的,集合的打印效果与定义顺序可以不一致。序可以不一致。建立集合用建立集合用或或set(),建立空集合类型,必须使用建立空集合类型,必须使用set()。6组合数据类型组合数据类型-集合集合类型类型集合类型定义 元素类型只能是整数、浮点数、字符串、元组等不元素类型只能是整数、浮点数、字符串、元组等不可变数据类型。列表、字典和集合类型本身都是可变数可变数据类型。列表、字典和集合类型本身都是可变数据类型,不能作为集合的
25、元素出现。据类型,不能作为集合的元素出现。集合类型定义6组合数据类型组合数据类型-集合集合类型类型 集集合合是是无无序序的的,所所以以没没有有索索引引的的概概念念,不不能能切切片片,集合中的元素可以动态增加或删除以及:集合中的元素可以动态增加或删除以及:6组合数据类型组合数据类型-集合集合类型类型常用操作符常用操作符S|TS|T并并STSTSTSTS S -T-T差差S&TS&T交交S TS T补补6组合数据类型组合数据类型-集合集合类型类型常用操作符常用操作符6个个操作符操作符描述描述S|TS|T并,返回一个新集合,包括集合并,返回一个新集合,包括集合S S和和T T中的所有元素中的所有元素
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 3.6 Ch6 组合 数据类型
限制150内