python
中有四種字符串查找方法非常相似:find()
,index()
,rfind()
抚笔,rindex()
。
以find()
為例侨拦,使用語法如下:
str.find(substr, beg=0, end=len(string))
# substr -- 指定檢索的字符串
# beg -- 開始索引殊橙,默認(rèn)為0。
# end -- 結(jié)束索引狱从,默認(rèn)為字符串的長度膨蛮。
說是用法相似就是指四個方法的參數(shù)都是一樣的,區(qū)別在于:
- 當(dāng)沒有找到指定字符串時季研,
find()
系方法返回-1
敞葛,而index()
系方法會報(bào)一個ValueError
的異常; - 而在查找方向与涡,
find()
與index()
都是自左向右找第一個匹配子串惹谐,而rfind()
與rindex()
則是從右往左找第一個,即最后一個匹配子串驼卖。
值得注意的是氨肌,beg
與end
是確定母串的查詢范圍,因此beg
不可大于end
酌畜,否則會找不到怎囚。