python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python中的index()与find()

Python中index()函数与find()函数的区别详解

作者:兔子爱读书

这篇文章主要介绍了Python中index()函数与find()函数的区别详解,Python index()方法检测字符串中是否包含子字符串 str ,如果指定beg开始和end结束范围,则检查是否包含在指定范围内,需要的朋友可以参考下

引言

起因:在排查错误时定位在判断语句这一行: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))

参数

返回值

如果包含子字符串返回开始的索引值,否则抛出异常。

实例

以下实例展示了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))

参数

返回值

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

到此这篇关于Python中index()函数与find()函数的区别详解的文章就介绍到这了,更多相关Python中的index()与find()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文