Python中index()函數(shù)與find()函數(shù)的區(qū)別詳解
引言
起因:在排查錯誤時定位在判斷語句這一行:if testlist.index('T'):
報錯:ValueError: substring not found。
原來是index()和find()沒區(qū)分清楚。
find()查找失敗會返回-1,不會影響程序運行。
一般用find!=-1或者 find>-1來作為判斷條件。
index
Python index() 方法檢測字符串中是否包含子字符串 str ,如果指定 beg(開始) 和 end(結(jié)束) 范圍,則檢查是否包含在指定范圍內(nèi)
該方法與 python find()方法一樣,只不過如果str不在 string中會報一個異常。
語法
index()方法語法:
str.index(str, beg=0, end=len(string))
參數(shù)
- str -- 指定檢索的字符串
- beg -- 開始索引,默認為0。
- end -- 結(jié)束索引,默認為字符串的長度。
返回值
如果包含子字符串返回開始的索引值,否則拋出異常。
實例
以下實例展示了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);
以上實例輸出結(jié)果如下:
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(結(jié)束) 范圍,則檢查是否包含在指定范圍內(nèi),如果包含子字符串返回開始的索引值,否則返回-1。
語法
find()方法語法:
str.find(str, beg=0, end=len(string))
參數(shù)
- str -- 指定檢索的字符串
- beg -- 開始索引,默認為0。
- end -- 結(jié)束索引,默認為字符串的長度。
返回值
如果包含子字符串返回開始的索引值,否則返回-1。
到此這篇關(guān)于Python中index()函數(shù)與find()函數(shù)的區(qū)別詳解的文章就介紹到這了,更多相關(guān)Python中的index()與find()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python爬蟲實戰(zhàn)之網(wǎng)易云音樂加密解析附源碼
讀萬卷書不如行萬里路,學的扎不扎實要通過實戰(zhàn)才能看出來,本篇文章手把手帶你解析網(wǎng)易云音樂數(shù)據(jù),大家可以在實戰(zhàn)過程中更有效的掌握python2021-10-10
python中超簡單的字符分割算法記錄(車牌識別、儀表識別等)
這篇文章主要給大家介紹了關(guān)于python中超簡單的字符分割算法記錄,如車牌識別、儀表識別等,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2021-09-09
python 實現(xiàn)存儲數(shù)據(jù)到txt和pdf文檔及亂碼問題的解決
這篇文章主要介紹了python 實現(xiàn)存儲數(shù)據(jù)到txt和pdf文檔及亂碼問題的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03

