Python第六章字符串课件.ppt
《Python第六章字符串课件.ppt》由会员分享,可在线阅读,更多相关《Python第六章字符串课件.ppt(66页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023/3/61Python语言编程导论语言编程导论第六章第六章字符串字符串内容提要内容提要概述概述通用序列操作通用序列操作字符串格式化字符串格式化字符串方法字符串方法正则表达式简介正则表达式简介2023/3/62一、概述一、概述在在Python中,字符串是除数字外最重要的中,字符串是除数字外最重要的数据类型。字符串无处不在:将字符串输出数据类型。字符串无处不在:将字符串输出到屏幕上;从用户的键盘输入读取字符串;到屏幕上;从用户的键盘输入读取字符串;文件通常被视为大型字符串;网页大部分是文件通常被视为大型字符串;网页大部分是由文本组成的。由文本组成的。字符串是一种聚合数据结构,可充分利用索字
2、符串是一种聚合数据结构,可充分利用索引和切片引和切片用于从字符串中提取子串。用于从字符串中提取子串。而而Python正则表达式库,是一种用来处理正则表达式库,是一种用来处理字符串的微型语言,但功能强大。字符串的微型语言,但功能强大。2023/3/63二、通用序列操作二、通用序列操作Python中,字符串、列表和元组都属于序中,字符串、列表和元组都属于序列。列。序列有一些通用的操作。包括:索引序列有一些通用的操作。包括:索引(indexing)、分片()、分片(slicing)、加)、加(adding)、乘()、乘(multiplying)、检)、检查某个元素是否属于序列的成员(成员资查某个元素
3、是否属于序列的成员(成员资格)、计算序列长度、找出最大元素和最格)、计算序列长度、找出最大元素和最小元素等。小元素等。2023/3/641、索引、索引序列中的所有元素都是有编号的序列中的所有元素都是有编号的从从0开始开始递增。这些元素可以通过编号分别访问。递增。这些元素可以通过编号分别访问。索引有正索引和负索引,可根据实际情况索引有正索引和负索引,可根据实际情况选用。选用。字符串就是一个由字符组成的序列,处理字符串就是一个由字符组成的序列,处理字符串时,经常需要访问其中的各个字符。字符串时,经常需要访问其中的各个字符。索引索引0指向第指向第1个字符。个字符。2023/3/65例如:字符串例如:
4、字符串apple的正索引和负索引的正索引和负索引2023/3/66例例6-1:字符串索引应用:字符串索引应用2023/3/67执行结果:执行结果:例例6-2:计算给定字符串的编码总和:计算给定字符串的编码总和2023/3/68执行结果:执行结果:2、分片、分片与使用索引访问单个元素类似,可以使用分片操作与使用索引访问单个元素类似,可以使用分片操作来访问一定范围内的元素。分片是实际应用中经常来访问一定范围内的元素。分片是实际应用中经常使用的技术,被截取的部分称为使用的技术,被截取的部分称为“子串子串”Python3支持的分片格式为:支持的分片格式为:Si:j:k表示:索引表示:索引S对象中的元素
5、,从索引为对象中的元素,从索引为i直到索引为直到索引为j-1,每隔,每隔k个元素索引一次,第三个限制个元素索引一次,第三个限制k为步长,为步长,默认为默认为1,也可以使用负数作为步长,步长,也可以使用负数作为步长,步长-1表示表示分片将会从右至左进行而不是通常的从左至右,实分片将会从右至左进行而不是通常的从左至右,实际效果主是将序列反转。际效果主是将序列反转。在在Python中,还可以使用中,还可以使用split()函数来截取字符函数来截取字符串。串。2023/3/69例例6-3:字符串分片:字符串分片2023/3/610执行结果:执行结果:例例6-4:返回文件名中的扩展名:返回文件名中的扩展
6、名2023/3/611执行结果:执行结果:2023/3/6123、序列相加(字符、序列相加(字符串连串连接、合并)接、合并)之前介绍过,使用之前介绍过,使用“+”完成。除此之外,还可以完成。除此之外,还可以使用使用join函数和函数和reduce函数实现字符串的合并。函数实现字符串的合并。注意:不同类型的数据不能相加。注意:不同类型的数据不能相加。如:如:4、乘法、乘法用数字用数字x乘以一个序列会生成新的序列,在新的序乘以一个序列会生成新的序列,在新的序列中,原来的序列被重复列中,原来的序列被重复x次。次。如:如:5、成员资格、成员资格为了检查一个值是否在序列中,可以使用为了检查一个值是否在序
7、列中,可以使用in运算符。该运算符检查某个条件是否为运算符。该运算符检查某个条件是否为真,若为真返回真,若为真返回True,否则返回,否则返回False。例如:例如:2023/3/6136、长度、最小值和最大值、长度、最小值和最大值len、min和和max都是内置函数。都是内置函数。len返回序列中包含的元素个数。返回序列中包含的元素个数。min返回序列中的最小值。返回序列中的最小值。max返回序列中的最大值。返回序列中的最大值。例如:例如:2023/3/614课堂练习一:课堂练习一:课堂练习一2023/3/615三、字符串格式化三、字符串格式化1、字符串格式化、字符串格式化C语言使用函数语言
8、使用函数printf()格式化输出结果,格式化输出结果,Python也提供了类似功能。也提供了类似功能。Python将若干值插入带有将若干值插入带有“%”标记的字符串中,标记的字符串中,从而可以按照指定格式输出字符串。从而可以按照指定格式输出字符串。语法:语法:%s%str1%s%s%(str1,str2)2023/3/616例例6-5:格式化字符串:格式化字符串2023/3/617执行结果:执行结果:例例6-6:带精度的格式化:带精度的格式化2023/3/618执行结果:执行结果:Python格式化字符串的替代符及含义:格式化字符串的替代符及含义:符号符号描述描述符号符号描述描述%c格式化字
9、符及其格式化字符及其ASCII码码%f格式化浮点数字,可指定小数格式化浮点数字,可指定小数点后的精度点后的精度%s格式化字符串格式化字符串%e用科学计数法格式化浮点数用科学计数法格式化浮点数%d格式化整数格式化整数%E作用同作用同%e%u格式化无符号整数格式化无符号整数%g根据值的大小决定使用根据值的大小决定使用%f或或%e%o格式化无符号八进制数格式化无符号八进制数%G作用同作用同%g%x格式化无符号十六进制数格式化无符号十六进制数%p用十六进制数格式化变量的地用十六进制数格式化变量的地址址%X格式化无符号十六进制数(大格式化无符号十六进制数(大写)写)%若在字符串中输出若在字符串中输出“%
10、”,需,需要使用要使用“%”2023/3/619例例6-7:符号、对齐和用:符号、对齐和用0填充填充在字段宽度和精度之间还可以放置一个在字段宽度和精度之间还可以放置一个“标志标志”,该标志,该标志可以是零、加号、减号或空格。零表示数字将会用可以是零、加号、减号或空格。零表示数字将会用0填充。填充。2023/3/620执行结果:执行结果:2、字符串的转义字符、字符串的转义字符计算机中存在可见字符与不可见字符。可见计算机中存在可见字符与不可见字符。可见字符指键盘上的字母、数字和符号。不可见字符指键盘上的字母、数字和符号。不可见字符是指换行、回车、制表符等字符。字符是指换行、回车、制表符等字符。对于
11、不可见字符,对于不可见字符,Python使用的方法类似使用的方法类似于于C语言,都是使用语言,都是使用“”作为转义字符。作为转义字符。Python还提供了函数还提供了函数strip()、lstrip()、rstrip()去除字符串中的转义字符。去除字符串中的转义字符。2023/3/621Python常用的转义字符及其含义:常用的转义字符及其含义:符号符号描述描述符号符号描述描述反斜线反斜线v纵向制表符纵向制表符单引号单引号r回车符回车符”双引号双引号f换页符换页符a发出系统响铃声发出系统响铃声o八进制数代表的字符八进制数代表的字符b退格符退格符x十六进制数代表的字符十六进制数代表的字符n换行符
12、换行符000终止符,其后的字符串全部忽略终止符,其后的字符串全部忽略t横向制表符横向制表符2023/3/622例例6-8:转义字符应用:转义字符应用2023/3/623执行结果:执行结果:四、字符串函数(方法)四、字符串函数(方法)Python字符串自带了大量很有用的函数,要查字符串自带了大量很有用的函数,要查看这些函数,可调用看这些函数,可调用dir并将参数指定为任何字符并将参数指定为任何字符串(如:串(如:dir())。)。虽无必要准确记住所有函数功能,但最好有个大虽无必要准确记住所有函数功能,但最好有个大致了解,这样有益于需要时去查询具体使用。致了解,这样有益于需要时去查询具体使用。字符
13、串函数的详细介绍可参阅其文档字符串或字符串函数的详细介绍可参阅其文档字符串或Python在线文档在线文档(https:/docs.python.org/3/)。)。此处介绍常用的字符串函数。此处介绍常用的字符串函数。2023/3/6241、测试函数、测试函数用于检测字符串是否为特定格式的函数,用于检测字符串是否为特定格式的函数,它们组成了一个最大的字符串函数组。它们组成了一个最大的字符串函数组。测试函数都返回测试函数都返回True或或False,因此也称,因此也称为布尔函数或谓词。为布尔函数或谓词。2023/3/625字符串测试函数:字符串测试函数:函数名函数名何时返回何时返回True函数名函
14、数名何时返回何时返回Trues.endswith(t)s以字符串以字符串t结尾结尾s.islower()s只包含小写字母只包含小写字母s.startswith(t)s以字符串以字符串t打头打头s.isnumeric()s只包含数字只包含数字s.isalnum()s只包含字母和数只包含字母和数字字s.isprintable()s只包含可打印字只包含可打印字符符s.isalpha()s只包含字母只包含字母s.isspace()s只包含空白字符只包含空白字符s.isdecimal()s只包含表示十进只包含表示十进制数字的字符制数字的字符s.istitle()s是个大小写符合是个大小写符合标题要求的字
15、符串标题要求的字符串s.isdigit()s只包含数字字符只包含数字字符s.isupper()s只包含大写字母只包含大写字母s.isidentifier()s是合法的标识符是合法的标识符tinss包含字符串包含字符串t2023/3/626例如:例如:2023/3/6272、字符串的查找函数、字符串的查找函数函数名函数名返回值返回值s.find(t)若未找到字符串若未找到字符串t,则返回,则返回-1;否则返回;否则返回t在在s中的起始位置中的起始位置s.rfind(t)与与find相同,但从右往左查找相同,但从右往左查找s.index(t)与与find相同,但如果在相同,但如果在s中找不到中找不
16、到t,则,则引发引发ValueError异常异常s.rindex(t)与与index相同,但从右往左查找相同,但从右往左查找2023/3/628说明:函数说明:函数index和和find之间的差别在于没有找到指定之间的差别在于没有找到指定子串的情形。函数子串的情形。函数index引发异常引发异常ValueError,而函,而函数数find将返回将返回-1。例例6-9:查找函数应用:查找函数应用2023/3/629执行结果:执行结果:3、字符串的替换函数、字符串的替换函数函数名函数名返回的字符串返回的字符串s.replace(old,new)将将s中的每个中的每个old替换为替换为news.ex
17、pandtabs(n)将将s中的每个制表符扩展为空格,空格宽度为中的每个制表符扩展为空格,空格宽度为n2023/3/630Python字符串自带了两个替换函数,如下表所示。字符串自带了两个替换函数,如下表所示。注意:使用替换函数可轻松地删除字符串中的子注意:使用替换函数可轻松地删除字符串中的子串。串。例例6-10:字符串替换:字符串替换2023/3/631执行结果:执行结果:4、字符串的合并、字符串的合并之前介绍过,之前介绍过,Python可使用可使用“+”连接不连接不同的字符串。同的字符串。除此之外,还可以使用除此之外,还可以使用join函数(是函数(是split方法的逆方法)和方法的逆方法
18、)和reduce函数实现字符串函数实现字符串的合并。的合并。2023/3/632例例6-11:使用:使用join函数连接字符串函数连接字符串2023/3/633执行结果:执行结果:例例6-12:使用:使用reduce函数连接字符串函数连接字符串2023/3/634执行结果:执行结果:5、拆分函数、拆分函数函数函数返回的字符串返回的字符串s.partition(t)将将s拆分为三个字符串(拆分为三个字符串(head、t和和tail),其中),其中head为为t前面的子串,前面的子串,tail为为t后面的子串。返回值为后面的子串。返回值为元组元组s.rpartition(t)与与partition
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 第六 字符串 课件
限制150内