继续上一篇教程,我们来了解字符串的相关操作。
8、去除字符串两侧指定内容
字符串去除两侧指定内容的方法有三种:
- strip(chars) :去除字符串两侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串两侧所有空格。
- lstrip(chars) :去除字符串左侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串左侧所有空格。
- rstrip(chars) :去除字符串右侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串右侧所有空格。
大家可以尝试运行下方这段代码:
str1 = ' 人人为我 我为人人 ' str2 = '人人为我 我为人人' print (str1) print (str1.strip()) print (str1.lstrip()) print (str1.rstrip()) print (str2.strip('人')) print (str2.lstrip('人')) print (str2.rstrip('人')) print (str2.strip('人人为'))
运行代码之后,显示的结果为:
9、字符串查询
字符串查询的方法有两种:
第一种:index(sub,start,end)和rindex(sub,start,end)
index方法是从左至右查询,rindex方法是从右至左查询;
参数sub是指被查询的字符或字符串,参数start是查询的起始位置,参数end是查询的终止位置(终止位置不在查询范围内);
参数start和参数end可以同时省略,这时为查询字符串中全部字符;也可以只省略参数end,表示查询范围为起始位置至末尾。
大家可以尝试运行下方这段代码:
s = '人人为我,我为人人。' print (s.index('人')) # 从左向右查询全部字符 print (s.index('人',2)) # 从左侧第3个字符开始向右查询至末尾 print (s.rindex('人')) # 从右向左查询全部字符 print (s.rindex('人',0,8)) # 从右侧第9个字符之前向左查询至首位
运行代码之后,显示的结果为:
第二种:find(sub,start,end)和rfind(sub,start,end)
这两个函数和index函数以及rindex函数作用相同,并且用法相同。
但是,当没有查询结果时,index函数与rindex函数会提示错误:ValueError:substring not find(值错误:未发现被查询的字符串)。
而另外的两个函数,find函数和rfind函数,在没有查询结果时,返回值为-1。
大家可以尝试运行下方这段代码:
s = '人人为我,我为人人。' print (s.find('地')) print (s.index('地'))
运行代码之后,显示的结果为:
10、字符串中字符的计数
字符串的计数方法是count(x,start,end),这个函数可以统计字符串中被查询的字符或字符串出现的次数。
参数x是指被查询的字符或字符串,参数start是查询的起始位置,参数end是查询的终止位置(终止位置不在查询范围内);
参数start和参数end可以同时省略,这时为查询字符串中全部字符;也可以只省略参数end,表示查询范围为起始位置至末尾。
大家可以尝试运行下方这段代码:
s = '人人为我,我为人人。' print (s.count('人')) # 计算字符串中被查询字符或字符串出现的次数 print (s.count('人人')) # 计算字符串中被查询字符或字符串出现的次数 print (s.count('人',0,8)) # 计算从字符串首位到第9个字符(不含第9个字符)之间被查询字符或字符串出现的次数
运行代码之后,显示的结果为:
关于字符串的相关操作就为大家介绍到这里。
本节知识点:
1、去除字符串两侧指定内容;
2、字符串查询;
3、字符串中字符的计数。
本节英文单词与中文释义:
1、strip:去除
2、index:索引
3、find:查找
4、count:计数
5、start:开始
6、end:结束
7、chars:字符
8、sub:附属
练习:
统计“3.1415926535897932384626”中,小数点之后”3″出现的次数。
答案:(见评论1楼)
转载请注明:魔力Python » Python3萌新入门笔记(5)