Python程序设计项目化教程课件:字符串_第1页
Python程序设计项目化教程课件:字符串_第2页
Python程序设计项目化教程课件:字符串_第3页
Python程序设计项目化教程课件:字符串_第4页
Python程序设计项目化教程课件:字符串_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

字符串Python程序设计项目化教程目录什么是字符串字符串基本操作字符串的处理与操作什么是字符串字符串是由一系列字符组成的,可以包含任何字符,例如字母、数字、空格、特殊字符等。在Python中,字符串的声明有三种方式:单引号、双引号和三引号(包括三个单引号或三个双引号)。什么是字符串s1='helloworld!'print(s1)s2="helloworld!"print(s2)s3='''helloworld!'''print(s3)s4="""helloworld!"""print(s4)输出结果:helloworld!helloworld!helloworld!helloworld!示例:利用单引号、双引号、三引号定义字符串。字符串的基本操作1)字符串的索引访问字符串是字符的有序集合,可以通过其位置来获得具体的元素。Python语言中的字符串包括正向递增序号和反向递减序号两种序号体系。在Python中,字符串中的字符可以通过正向递增序号的索引来提取的,此时索引从0开始。Python也可以反向递减序号的索引来提取,此时索引序取负值,表示从末尾提取,最后一个为-1,倒数第二个为-2,即程序认为可以从结束处反向计数。字符串的基本操作s='Todaymustborrownothingoftomorrow.'print(s[0])print(s[1])print(s[-1])print(s[-2])输出结果:To.w示例:通过字符串的索引访问字符串。字符串的基本操作2)字符串的切片访问

字符串切片是指从一个给定的字符串中截取一部分来使用。Python的字符串切片方法让我们可以使用简单的代码来截取字符串中的子字符串。字符串的基本操作语法格式为:s[start:stop]

其中s是原始字符串,start是起始位置,stop是结束位置。

注意:这是左闭右开的区间。

在切片方式中,若start下标缺省,表示从字符串的开始取子串;

若stop下标缺省,表示取到字符串的最后一个字符;

若start下标和stop下标都缺省,则取整个字符串。字符串的基本操作

字符串切片还可以设置取子字符串的顺序。

格式为:s[start:stop:step]

其中s是原始字符串,start是起始位置,stop是结束位置,step是步长。

当步长大于0的时候,从左往右取字符;

当步长小于0的时候,从右往左取字符。字符串的基本操作s='Todaymustborrownothingoftomorrow.'print(s[0:5])print(s[6:10])print(s[-9:-1])print(s[0:5:1])输出结果:TodaymusttomorrowToday示例:通过字符串的切片访问提取子字符串。字符串的处理与操作Python可以利用内置字符串处理函数统计字符串的长度、实现字符串之间的转换、查找子串等操作。1)内置字符串处理函数len(s)返回字符串s的长度。chr(s)返回Unicode编码为s的字符。str(s)将任意类型的x转化为字符串类型。ord(s)返回字符s的Unicode编码。hex(s)将整数s转化为十六进制数。oct(s)将整数s转化为八进制数。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s[0:5])print(s[6:10])print(s[-9:-1])print(s[0:5:1])输出结果:TodaymusttomorrowToday示例:利用内置字符串处理函数处理字符串。字符串的处理与操作2)查找类函数Python通过查找类函数可以在字符串中查找指定的元素,可以通过index()、find()、rfind()等实现。字符串的处理与操作index()函数index()查找一个字符串在另一个字符串指定范围内(默认是整个字符串)中首次出现的位置,若不存在则抛出异常。语法格式:s.index(sub[,start[,end]])其中,s表示要进行查找的原始字符串;sub代表要查找的子字符串;start和end分别表示字符串查找的起始和结束位置。如果省略start,则默认从字符串开头查找;如果省略end,则默认查找到字符串结尾。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print('字符串中的Today位置为:',s.index('Today'))print('从索引5开始查找tomorrow:',s.index('tomorrow',5))print('从索引15开始查找tomorrow:',s.index('tomorrow',15,38))输出结果:字符串中的Today位置为:0从索引5开始查找tomorrow:29从索引15开始查找tomorrow:29示例:利用index()函数查找字符串。字符串的处理与操作find()函数除了使用index()方法在字符串中查找指定元素,还可以使用find()方法查找一个字符串在另一个字符串指定范围内(默认是整个字符串)中首次出现的位置。如果找到子串,返回子串所在位置的最左端索引,否则返回-1。语法格式:s.find(sub[,start[,end]])其中,s表示要进行查找的原始字符串;sub代表要查找的子字符串;start和end分别表示字符串查找的起始和结束位置。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print('字符串中的Today位置为:',s.find('Today'))print('从索引5开始查找tomorrow:',s.find('tomorrow',5))print('从索引15开始查找tomorrow:',s.find('tomorrow',15,38))输出结果:字符串中的Today位置为:0从索引5开始查找tomorrow:29从索引15开始查找tomorrow:29示例:利用find()函数查找字符串。字符串的处理与操作rfind()函数利用rfind()可以实现查找一个字符串在另一个字符串指定范围内(默认是整个字符串)中最后一次出现的位置,若不存在则返回-1。语法格式:rfind()方法语法:s.rfind(sub[,start[,end]])其中,s表示要进行查找的原始字符串;sub代表要查找的子字符串;start和end分别表示字符串查找的起始和结束位置。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'s1='tomorrow'print(s.rfind(s1))print(s.rfind(s1,0,30))输出结果:29-1示例:利用rfind()函数查找字符串。字符串的处理与操作rindex()函数利用rindex()函数可以查找一个字符串在另一个字符串指定范围内(默认是整个字符串)中最后一次出现的位置,若不存在则抛出异常。语法格式:s.rindex(sub[,start[,end]])其中,s表示要进行查找的原始字符串;sub代表要查找的子字符串;start和end分别表示字符串查找的起始和结束位置。如果省略start,则默认从字符串开头查找;如果省略end,则默认查找到字符串结尾。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'s1='tomorrow'print(s.rindex(s1))print(s.rindex(s1,0,40))输出结果:2929示例:利用rindex()函数查找字符串。字符串的处理与操作count()函数如果需要知道指定元素在序列中出现的次数,可以使用count()方法进行计数并返回,若不存在则返回0。语法格式:s.count(obj)其中,s表示序列,obj表示要统计的对象。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.count('o'))输出结果:8示例:利用count()统计字符串出现的次数。字符串的处理与操作3)分割类函数split()函数split()函数以指定字符为分隔符,从原字符串的左端开始将其分割为多个字符串,并返回包含分割结果的列表。语法格式:s.split([delimiter,num])其中,s表示被分割的字符串,delimiter表示分隔符,可以是空格、换行(\n)、制表符(\t)等,缺省时为空格,num表示分割次数,缺省时全部分割。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.split(''))输出结果:['Today','must','borrow','nothing','of','tomorrow.']示例:利用split分割字符串。字符串的处理与操作rsplit()函数rsplit()函数可以以指定字符为分隔符,从原字符串的右端开始将其分割为多个字符串,并返回包含分割结果的列表。语法格式:s.rsplit([delimiter,num])其中,s表示被分割的字符串,delimiter表示分隔符,可以是空格、换行(\n)、制表符(\t)等,缺省时为空格,num表示分割次数,缺省时全部分割。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.rsplit(''))输出结果:['Today','must','borrow','nothing','of','tomorrow.']示例:利用rsplit分割字符串。字符串的处理与操作partition()函数partition()函数可以以指定字符串为分隔符将原字符串分割为3个部分,包括分隔符之前的字符串,分隔符字符串和分隔符之后的字符串,返回一个3元素的元组。语法格式:s.partition(str1)其中,s表示被分割的字符串,str1该参数用于指定分隔原字符串的字符串。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'s.partition('')输出结果:('Today','','mustborrownothingoftomorrow.')示例:利用partition分割字符串。字符串的处理与操作rpartition()函数rpartition()方法类似于partition()方法,只是该方法是从目标字符串的末尾也就是右边开始搜索分割符。rpartition()函数可以以指定字符串为分隔符将原字符串分割为3个部分,包括分隔符之前的字符串,分隔符字符串和分隔符之后的字符串,返回一个3元素的元组。语法格式:s.rpartition(str1)其中,s表示被分割的字符串,str1该参数用于指定分隔原字符串的字符串。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'s.rpartition('')输出结果:('Todaymustborrownothingof','','tomorrow.')示例:利用rpartition分割字符串。字符串的处理与操作4)字符串连接方法join()函数join()函数用于连接任意数量的字符串(包括要连接的元素字符串、元组、列表、字典),用新的目标分隔符连接,返回新的字符串。语法格式:s.join(sequence)其中,s表示连接符,可以为空,sequence表示要连接的字符串。字符串的处理与操作s1=['Today','must','borrow','nothing','of','tomorrow.']''.join(s1)输出结果:'Todaymustborrownothingoftomorrow.'s2=('Today','must','borrow','nothing','of','tomorrow.')''.join(s2)输出结果:'Todaymustborrownothingoftomorrow.'示例:利用join连接字符串。字符串的处理与操作5)大小写字符转换方法lower()函数和upper()函数lower()方法用于将字符串中所有大写字符转换为小写,而upper()方法则用于将字符串中所有小写字符转换为大写。语法格式:s.lower()和s.upper(),其中s为要转换的字符串。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'s.lower()输出结果:'todaymustborrownothingoftomorrow.'s='Todaymustborrownothingoftomorrow.'s.upper()输出结果:'TODAYMUSTBORROWNOTHINGOFTOMORROW.'示例:利用s.lower()和s.upper()实现字符串中字母大小写的转换。字符串的处理与操作capitalize()函数capitalize()函数可以将字符串首字母变为大写。语法格式:s.capitalize(),其中,s表示要转换的字符串。字符串的处理与操作s='todaymustborrownothingoftomorrow.'print(s.capitalize())输出结果:Todaymustborrownothingoftomorrow.示例:利用capitalize将字符串的首字母大写。字符串的处理与操作title()函数title()函数可以将字符串中每个单词的首字母都变为大写。语法格式:s.title(),其中,s表示要转换的字符串。字符串的处理与操作s='todaymustborrownothingoftomorrow.'print(s.title())输出结果:TodayMustBorrowNothingOfTomorrow.示例:利用title将字符串的所有单词的首字母大写。字符串的处理与操作swapcase()函数swapcase()函数可以将字符串中的字符大小写互换,字符转换后会生成新的字符串,不对原字符串进行任何修改。语法格式:s.swapcase(),其中,s表示要转换的字符串。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.swapcase())输出结果:tODAYmUSTbORROWnOTHINGoFtOMORROW.示例:利用swapcase实现字符串中大小写互换。字符串的处理与操作

6)替换方法replace()方法用于将字符串中的旧字符串替换成新字符串。语法格式:s.replace(old,new[,max])其中,s表示字符串,old表示将被替换的旧字符串,new表示新字符串,用于替换old,max是可选参数,表示替换的最大次数,缺省时替换所有。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.replace('o','O',3))输出结果:TOdayMustBOrrOwNothingOfTomorrow.示例:利用replace实现字符串的替换。字符串的处理与操作

7)删除字符串两端、右端或左端连续空白字符和指定字符方法strip()函数strip()方法用于移除字符串首尾连续的空白字符或指定字符。语法格式:s.strip([chars])其中,s表示字符串,chars表示移除的字符串首尾指定的字符,缺省时为空格。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.strip(''))输出结果:TodayMustBorrowNothingOfTomorrow.示例:利用strip删除字符串首尾的空格字符。字符串的处理与操作

rstrip()函数和lstrip()函数rstrip()函数删除字符串右端空白字符,而lstrip()函数是删除字符串左端空白字符。语法格式:s.rstrip()和s.lstrip()其中,s表示要删除空格字符的字符串。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.rstrip(''))输出结果:TodayMustBorrowNothingOfTomorrow.s='TodayMustBorrowNothingOfTomorrow.'print(s.lstrip(''))输出结果:TodayMustBorrowNothingOfTomorrow.示例:利用rstrip()和lstrip()删除字符串两端的空格。字符串的处理与操作8)判断字符串是否以指定字符串开始或结束方法startswith()函数startswith()函数方法用于检查字符串是否是以指定子字符串开头,如果是则返回True,否则返回False。语法格式:s.startswith(substr,start,end);其中,s是要检测的字符串。Substr是指定的子字符串。start是可选参数,用于设置字符串检测的起始位置。end是可选参数,用于设置字符串检测的结束位置。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.startswith('T'))print(s.startswith('T',0,30))输出结果:TrueTrue示例:利用startswith判断字符串是否是以某一个子串开始。字符串的处理与操作endswith()函数endswith()函数方法用于检查字符串是否是以指定子字符串结束,如果是则返回True,否则返回False。语法格式:s.endswith(substr,start,end);其中,s是要检测的字符串。Substr是指定的子字符串。start是可选参数,用于设置字符串检测的起始位置。end是可选参数,用于设置字符串检测的结束位置。字符串的处理与操作s='TodayMustBorrowNothingOfTomorrow.'print(s.endswith('.'))print(s.endswith('w',0,30))输出结果:TrueFalse示例:利用endswith判断字符串是否是以某一个子串结束。字符串的处理与操作9)判断字符串类型方法:isalnum()函数isalnum()方法用于检测字符串是否由字母和数字,或两种中的一种组成,也就是说该函数检查字符串是否由字母[a-z,A-Z](也包括构成其它语言的字符,如汉字,俄文,日文,韩文)或数字[0-9]及其组合组成的,如果是则返回True,否则返回False。语法格式:s.isalnum()其中,s表示要检测的字符串字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.isalnum())输出结果:False示例:利用isalnum检测字符串是否有字母和数字组成。字符串的处理与操作isspace()函数isspace()函数可以用来检测字符串中是否只包含空格字符串,如果只包含空格字符串则返回True,否则返回False。语法格式:s.isspace(),其中,s表示要检测的字符串。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.isspace())输出结果:False示例:利用s.isspace()是否只有空格字符串。字符串的处理与操作isupper()函数和islower()函数isupper()函数用来检测字符串是否全为大写,而islower()函数用来检测字符串是否全为小写。语法格式:s.isupper()和s.islower(),其中,s表示要检测的字符串。字符串的处理与操作s='Todaymustborrownothingoftomorrow.'print(s.isupper())输出结果:Falses='Todaymustborrownothingoftomorrow.'print(s.islower())输出结果:False示例:利用s.isupper()和s.islower()检测字符串是否全部是大写或者小写。字符串的处理与操作isdigit()函数和isalnum()函数isdigit()函数用来检测字符是否全为数字,而isalnum()函数用来检测是否全为字母或汉字或数字语法格式:s.isdigit()和s.isalnum()其中,s表示要检测的字符串,其中,s表示要检测的字符串。字符串的处理与操作s='123'print(s.isdigit())输出结果:Trues='aAbc123'print(s.isalnum())输出结果:True示例:利用isdigit()检测是否全部是数字,利用isalnum()来检测是否全为字母或汉字或数字。字符串的处理与操作isalpha()函数利用isalpha()函数能检测字符串中检查一个字符串中所有的字符是否都是由字母构成的,并且至少有1个字符,如果是返回True,否则返回False。语法格式:s.isalpha(),其中,s表示要检测的字符串。字符串的处理与操作s1='aAbc123'print(s1.isalpha())s2='aAbc'print(s2.isalpha())输出结果:FalseTrue示例:利用isalpha检测字符串是否至少有一个字符并且所有字符都是字母。字符串的处理与操作10)字符串排版方法center()函数利用center()函数能实现字符串居中对齐,返回一个长度为width,两边用fillchar(单字符)填充的字符串,即字符串s居中,两边用fillchar填充。若字符串的长度大于width,则直接返回字符串s。语法:s.center(width,"fillchar"),其中s表示要居中对齐的字符串,width为返回字符串的长度,fillchar为填充的字

温馨提示

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

评论

0/150

提交评论