4.4通用序列操作_第1页
4.4通用序列操作_第2页
4.4通用序列操作_第3页
4.4通用序列操作_第4页
4.4通用序列操作_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.4通用序列操作索引与切片相加与重复成员归属长度及最值查找与统计元素

通用序列操作序列是指一块可存放多个值的连续内存空间,这些值按照一定的顺序排列,可以通过每个值所在位置的编号访问它们。字符串可以看做单一字符的有序组合,是基本的数据类型(已讲解)。元组是包含0个或多个数据项的不可变序列类型,一旦生成,不能替换或删除。列表是可以修改数据项的序列类型,是非常灵活的容器。序列的通用操作:索引与切片、相加与重复、成员归属、长度及最值、查找与统计元素。通用序列操作序列中,每个元素都有属于自己的编号,即索引,索引值从0开始递增。索引的计数可以从左到右递增的计数,也可以从右到左以负数的形式计数。索引与切片-序列索引通用序列操作列表是由一组任意类型的值组合而成的序列,组成列表的值称为元素,列表的用方括号表示,元素之间用逗号隔开。元组是由一组任意类型的值组成的不可变序列,用圆括号表示,元素之间用逗号隔开。索引与切片-序列索引list01=[1,2,"Python","千锋"]print("list01[3]:",list01[3])#取列表的第4个元素,即索引值为3的元素print("list01[-1]:",list01[-1])#列表第4个元素也是最后1个元素,负索引值是-1list01[3]:千锋list01[-1]:千锋通用序列操作切片是指从序列中截取部分元素组成新的序列,且不会使原序列产生变化。索引与切片-序列切片seq[start:end:step]seq为序列名称,返回索引为start到end(不包括end),步长为step的子序列。start不传值时默认为0,end不传值时默认为序列长度,step不传值时默认为1。通用序列操作索引与切片-序列切片list01=[1,2,"Python","千锋"]print("list01[1:3]:",list01[1:3])print("list01[:3]:",list01[:3])print("list01[::2]",list01[::2])list01[1:3]:[2,'Python']list01[:3]:[1,2,'Python']list01[::2][1,'Python']通用序列操作Python支持两种相同类型的序列进行相加操作,即用加(+)运算符将序列连接起来。相加与重复-序列相加list01=["蒸南瓜","熘茭白","带鱼"]list02=["油泼肉","三鲜丸子"]print(list01+list02)['蒸南瓜','熘茭白','带鱼','油泼肉','三鲜丸子']两个列表相加通用序列操作如果不同类型的序列进行相加,程序将会异常。相加与重复-序列相加list01=["蒸南瓜","熘茭白","带鱼"]sname="油泼肉"print(list01+sname)Traceback(mostrecentcalllast):File"C:\1000phone\parter5\demo1.py",line3,in<module>print(list01+sname)TypeError:canonlyconcatenatelist(not"str")tolist列表类型和字符串类型相加通用序列操作序列乘一个数字n将会生成一个新的序列,在新的序列中,原序列将会被重复n次。相加与重复-序列重复print("Python"*5)#字符串"Python"重复5次print(["Python"]*5)#列表["Python"]重复5次print(("Python",1)*5)#元组("Python",1)重复5次PythonPythonPythonPythonPython['Python','Python','Python','Python','Python']('Python',1,'Python',1,'Python',1,'Python',1,'Python',1)通用序列操作在Python中用in运算符检查一个值是否在序列中,如果在序列中找到该值,则返回True,否则返回False。成员归属list01=[1,2,3,4,5]if3inlist01:print("3在列表list01中")else:print("3不在列表list01中")3在列表list01中使用in运算符检查值是否在列表中通用序列操作与in相对的notin用于判断一个值是否不在序列中,如果序列中没有该值,则返回True,否则返回False。成员归属tuple01=("千锋","教育")if"千锋"notintuple01:print("'千锋'不在元组tuple01中")else:print("'千锋'在元组tuple01中")'千锋'在元组tuple01中使用notin运算符检查值是否不在元组中通用序列操作Python中的内置函数len()可以计算序列的长度,即序列元素的数量。长度及最值-序列长度sname="Python"print("字符串长度为",len(sname))list01=["Python","C++","Java","Go"]print("列表长度为",len(list01))tuple01=("Python","C++","Java","Go")print("元组长度为",len(tuple01))字符串长度为6列表长度为4元组长度为4通用序列操作Python中的内置函数max()可以计算出序列中的最大元素。长度及最值-序列最大值list01=[1,7,8,4,4,5,6]print("列表中的最大元素为:",max(list01))列表中的最大元素为:8通用序列操作字符串之间也可以进行大小比较。Python中字符串的每个字符都使用Unicode编码,其根据逐个字符的Unicode码进行大小比较。chr()函数可以返回Unicode码对应的单个字符,ord()函数可以返回单个字符表示的Unicode码。长度及最值-序列最大值print("字符'a'的Unicode码是:",ord("a"))print("Unicode码是97的字符是:",chr(97))字符'a'的Unicode码是:97Unicode码是97的字符是:a通用序列操作当字符串进行比较时,会逐个比较两个字符串的字符,直到遇到第一个不相等的字符,返回比较结果。长度及最值-序列最大值print('"hello">"happy"的运行结果为:',"hello">"happy")"hello">"happy"的运行结果为:True比较字符串"hello"和"happy"的大小关系通用序列操作当序列元素是字符串类型时,也能返回其中最大元素。长度及最值-序列最大值list01=["hello","happy","python"]print("list01中的最大值是:",max(list01))list01中的最大值是:python通用序列操作当序列中存在类型不同的元素时,无法进行比较,不能返回其中的最大元素长度及最值-序列最大值list01=["hello",123,"Python"]print("list01中的最大值是:",max(list01))Traceback(mostrecentcalllast):File"C:\1000phone\parter5\demo1.py",line2,in<module>print("list01中的最大值是:",max(list01))TypeError:'>'notsupportedbetweeninstancesof'int'and'str'通用序列操作Python中的内置函数min()可以计算出序列中的最小元素。长度及最值-序列最小值sname="Python"print("字符串中的最小元素是:",min(sname))tuple01=("Python","Hello","Tuple")print("元组中的最小元素是:",min(tuple01))字符串中的最小元素是:P元组中的最小元素是:Hello通用序列操作index()方法可以查找序列中第一次出现某个元素的索引,如果序列中没有此元素则报错。查找与统计元素-查找元素seq.index(x[,i[,j]])index()方法返回序列seq中从i开始到j(不包含j)位置中第一次出现元素x的索引通用序列操作查找与统计元素-查找元素list01=["hello",123,"Python",123]print("列表中第一次出现元素123的索引为:",list01.index(123))列表中第一次出现元素123的索引为:1list01=["hello",123,"Python",123]print("列表中第一次出现元素'123'的索引为:",list01.index("123"))Traceback(mostrecentcalllast):File"C:\1000phone\parter5\demo1.py",line2,in<module>print("列表中第一次出现元素'123'的索引为:",list01.index("123"))ValueError:'123'

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论