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

2019-05-24 11:17:24 2207浏览

学完字符串填充后是不是觉得字符串操作很有趣?如果字符串比较长的话那么我们怎么能够在字符串中找到特定字符呢?今天扣丁学堂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从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。



扣丁学堂微信公众号                          Python全栈开发爬虫人工智能机器学习数据分析免费公开课直播间


      【关注微信公众号获取更多学习资料】         【扫码进入Python全栈开发免费公开课】



查看更多关于"Python开发资讯"的相关文章>



标签: Python培训 Python视频教程 Python在线视频 Python学习视频 Python培训班

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号