Python中index()函数与find()函数的区别详解
引言
起因:在排查错误时定位在判断语句这一行:if testlist.index('T'):
报错:ValueError: substring not found。
原来是index()和find()没区分清楚。
find()查找失败会返回-1,不会影响程序运行。
一般用find!=-1或者 find>-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 string example....wow!!!"; str2 = "exam"; print str1.index(str2); print str1.index(str2, 10); print str1.index(str2, 40);
以上实例输出结果如下:
15
15
Traceback (most recent call last):
File "test.py", line 8, in
print str1.index(str2, 40);
ValueError: substring not found
shell returned 1
find
Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
语法
find()方法语法:
str.find(str, beg=0, end=len(string))
参数
- str -- 指定检索的字符串
- beg -- 开始索引,默认为0。
- end -- 结束索引,默认为字符串的长度。
返回值
如果包含子字符串返回开始的索引值,否则返回-1。
到此这篇关于Python中index()函数与find()函数的区别详解的文章就介绍到这了,更多相关Python中的index()与find()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
查看TensorFlow checkpoint文件中的变量名和对应值方法
今天小编就为大家分享一篇查看TensorFlow checkpoint文件中的变量名和对应值方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-06-06
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
这篇文章主要介绍了windows10 pycharm下安装pyltp库和加载模型实现语义角色标注,本文通过图文实例相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-05-05


最新评论