扣丁学堂Python培训简述Python字符串操作(三)--字符串查找函数

学完字符串填充后是不是觉得字符串操作很有趣?如果字符串比较长的话那么我们怎么能够在字符串中找到特定字符呢?今天扣丁学堂Python培训小编就带小伙伴们一起来看看字符串的查找函数,相信会更有趣的。

扣丁学堂Python培训简述Python字符串操作(三)--字符串查找函数

count()

语法:str.count(sub,start=0,end=len(str))

描述:统计字符串中sub字符出现的次数。也可以设置在字符串中搜索的开始位置和结束位置。

参数:sub 搜索的字符串

start 在字符串中搜索的开始位置。默认为0,字符串开头。

end 在字符串中搜索的结束位置。默认为字符串长度。

返回值:返回sub子字符串在字符串中出现的次数。

>>> a = 'abcefdabc' #len(a) == 9
>>> a.count('abc')
2
>>> a.count('abc',3) #从下标为3开始统计
1
>>> a.count('abc',3,8)
0
>>> a.count('abc',3,9)
1
>>>

find()

语法:str.find(sub,start=0,end=len(str))

描述:检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。

参数:sub 指定检索的字符串

start 开始索引。默认为0,字符串开头。

end 结束索引。默认为字符串长度。

返回值:如果包含子字符返回子字符在字符串中开始的索引值,否则返回-1。

>>> a.find('efd')
3
>>> a.find('efd',2)
3
>>> a.find('abc')
0
>>> a.find('abc',4) #返回自开始检索位置之后子字符串的开始索引值
6
>>> a.find('ght') #子字符不包含返回-1
-1
>>> a.find('efd',5) #子字符包含,但是检索开始位置之后的字符不包含,也返回-1
-1
>>>

rfind()

语法:str.rfind(sub,start=0,end=len(str))

描述:检测字符串中是否包含子字符串 str ,如果指定 start(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。

参数:sub 指定检索的字符串

start 开始索引。默认为0,字符串开头。

end 结束索引。默认为字符串长度。

返回值:如果包含子字符返回子字符在字符串中最后一次出现的索引值,没有匹配项则返回-1。

>>> a.rfind('abc')
6

index()

语法:str.rfind(sub,start=0,end=len(str))

描述:检测字符串中是否包含子字符串 str ,如果指定 start(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

参数:sub 指定检索的字符串

start 开始索引。默认为0,字符串开头。

end 结束索引。默认为字符串长度。

返回值:如果包含子字符返回子字符在字符串中开始位置的索引值,没有匹配项则返回-1。

>>> a.index('abc')
0
>>> a.index('abc',4)
6
>>> a.index('abc',10)
Traceback (most recent call last):
 File "<pyshell#18>", line 1, in <module>
 a.index('abc',10)
ValueError: substring not found
>>>

rindex()

和rfind()函数差不多,只不过没有匹配的字符串会报异常。

>>> a.rindex('abc')
6
>>> a.rindex('abc',8)
Traceback (most recent call last):
 File "<pyshell#21>", line 1, in <module>
 a.rindex('abc',8)
ValueError: substring not found
>>>

最后想要了解更多关于Python和人工智能方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频直播课定能让你快速掌握Python从入门到精通开发实战技能。

Pyhon基础课程:https://ke.qq.com/course/327534?flowToken=1008607 【扫码进入Python全栈开发免费公开课】

注:点击(了解更多)进入课程直播间

相关推荐