python find() 和 index() 方法

2018-09-26  本文已影响11人  一只酸柠檬精

find() 方法

字符串方法

str.find(str, beg=0, end=len(string))

检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。

a = 'Hello,World'
print(a.find('h'))
print(a.find('l'))
print(a.find('or'))
#输出
-1
2
7

可见,find()方法对大小写是敏感的,没有就返回-1,另外只返回字符串的索引值的起始位置.

index()方法

字符串方法

str.index(str, beg=0, end=len(string))

index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

a = 'Hello,World'
print(a.index('l'))
print(a.index('or'))
print(a.index('h'))
#输出
Traceback (most recent call last):
2
7
  File "/Users/yanpeng/PycharmProjects/leetcode/justfortest.py", line 100, in <module>
    print(a.index('h'))
ValueError: substring not found

可见,find()方法对大小写也是敏感的

总结

所以index()和find()方法在具体用法上并无区别,只是在没有找到指定字符串的时候index()会抛出一个异常,而find()会返回 -1。

上一篇下一篇

猜你喜欢

热点阅读