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

 更新时间:2023年08月21日 10:07:52   作者:兔子爱读书  
这篇文章主要介绍了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))

参数

  • 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()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python3使用turtle绘制超立方体图形示例

    Python3使用turtle绘制超立方体图形示例

    这篇文章主要介绍了Python3使用turtle绘制超立方体图形,结合实例形式分析了Python使用海龟绘图模块turtle进行复杂图形绘制的相关原理与操作技巧,需要的朋友可以参考下
    2018-06-06
  • python的描述器descriptor详解

    python的描述器descriptor详解

    这篇文章主要介绍了python的描述器descriptor详解,描述器可以用于控制属性的读取、写入和删除等操作,同时还可以用于实现计算属性、类属性、属性别名等高级功能,需要的朋友可以参考下
    2023-07-07
  • Django自带的用户验证系统实现

    Django自带的用户验证系统实现

    这篇文章主要介绍了Django自带的用户验证系统实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Python爬虫实战之网易云音乐加密解析附源码

    Python爬虫实战之网易云音乐加密解析附源码

    读万卷书不如行万里路,学的扎不扎实要通过实战才能看出来,本篇文章手把手带你解析网易云音乐数据,大家可以在实战过程中更有效的掌握python
    2021-10-10
  • 详解Python odoo中嵌入html简单的分页功能

    详解Python odoo中嵌入html简单的分页功能

    在odoo中,通过iframe嵌入 html,页面数据则通过controllers获取,使用jinja2模板传值渲染。这篇文章主要介绍了Python odoo中嵌入html简单的分页功能 ,需要的朋友可以参考下
    2019-05-05
  • python中超简单的字符分割算法记录(车牌识别、仪表识别等)

    python中超简单的字符分割算法记录(车牌识别、仪表识别等)

    这篇文章主要给大家介绍了关于python中超简单的字符分割算法记录,如车牌识别、仪表识别等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-09-09
  • Python2.x与3​​.x版本有哪些区别

    Python2.x与3​​.x版本有哪些区别

    这篇文章主要介绍了Python2.x与3​​.x版本有哪些区别,文中讲解非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • python 实现存储数据到txt和pdf文档及乱码问题的解决

    python 实现存储数据到txt和pdf文档及乱码问题的解决

    这篇文章主要介绍了python 实现存储数据到txt和pdf文档及乱码问题的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Python的Darts库实现时间序列预测

    Python的Darts库实现时间序列预测

    Darts一个集统计、机器学习与深度学习模型于一体的Python时间序列预测库,本文主要介绍了Python的Darts库实现时间序列预测,感兴趣的可以了解一下
    2025-09-09
  • python 对多个csv文件分别进行处理的方法

    python 对多个csv文件分别进行处理的方法

    今天小编就为大家分享一篇python 对多个csv文件分别进行处理的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01

最新评论