python中index()与find()的区别

更新时间:2023-05-23 16:04:35 阅读: 评论:0

python中index()与find()的区别
起因:在排查错误时定位在判断语句这⼀⾏:if testlist.index('T'):
报错:ValueError: substring not found。原来是index()和find()没区分清楚。find()查找失败会返回-1,不会影响程序运⾏。⼀般⽤find!=-1或者find>-1来作为判断条件。
1.index描述
Python index() ⽅法检测字符串中是否包含⼦字符串 str ,如果指定 beg(开始)和 end(结束)范围,则检查是否包含在指定范围内,该⽅法与 python find()⽅法⼀样,只不过如果str不在 string中会报⼀个异常。
语法
index()⽅法语法:
str.index(str, beg=0,end=len(string))
参数美丽的夕阳
str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。
返回值
如果包含⼦字符串返回开始的索引值,否则抛出异常。
实例
以下实例展⽰了index()⽅法的实例:
采桑子纳兰性德
#!/usr/bin/python
str1 = "this is wow";
str2 = "exam";
print str1.index(str2);
如何低碳生活
校园笑话
print str1.index(str2, 10);
print str1.index(str2, 40);
以上实例输出结果如下:
15
c6h8o7
前车之鉴的意思15
Traceback (most recent call last):
File "test.py", line 8, in
print str1.index(str2, 40);
ValueError: substring not found
shell returned 1
2.find描述
磁场Python find() ⽅法检测字符串中是否包含⼦字符串 str ,如果指定 beg(开始)和 end(结束)范围,则检查是否包含在指定范围内,如果包含⼦字符串返回开始的索引值,否则返回-1。
语法
find()⽅法语法:
str.find(str, beg=0,end=len(string))
参数
str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。
返回值
清蒸肉末
如果包含⼦字符串返回开始的索引值,否则返回-1。

本文发布于:2023-05-23 16:04:35,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/747094.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字符串   包含   判断   是否   返回   错误   定位
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图