Python程式獲取字串中子字串的索引
在Python中,我們可以使用find()和index()方法來獲取字串中子字串第一次出現的索引。Python提供了各種字串操作函式來修改和訪問文字資料。在本文中,我們將編寫一個程式來獲取字串中子字串的索引。
方法一:使用find()方法
find方法搜尋作為函式引數傳遞的特定子字串,並返回子字串的起始索引。如果在字串中找不到子字串,則find()方法返回-1。
呼叫find()方法時,它接受3個引數:
子字串 - 您在字串中搜索的子字串
起始索引(可選) - 您希望find()方法開始搜尋的索引。其預設值為0,即字串的起始索引。
結束索引(可選) - 您希望find()方法繼續搜尋子字串的索引。其預設值為字串的長度,即字串的結束索引。
語法
string.find(substring, start, end)
字串是您想要查詢子字串索引的字串。作為引數傳遞的起始索引和結束索引是可選的。當不作為引數傳遞時,它將採用預設值。
示例
如果我們想在字串“Hello, World!”中查詢子字串“World”的索引,我們可以使用find()方法如下:
string = "Hello, World!" substring = "World" index = string.find(substring) print(index)
輸出
7
方法二:使用index()方法
index()方法返回字串中子字串第一次出現的索引。如果找不到子字串,它將引發ValueError。
index方法也接受三個引數,類似於find()方法:
子字串 - 您在字串中搜索的子字串
起始索引(可選) - 您希望find()方法開始搜尋的索引。其預設值為0,即字串的起始索引。
結束索引(可選) - 您希望find()方法繼續搜尋子字串的索引。其預設值為字串的長度,即字串的結束索引。
語法
string.index(substring, start, end)
字串是您想要查詢子字串索引的字串。作為引數傳遞的起始索引和結束索引是可選的。當不作為引數傳遞時,它將採用預設值。
示例
如果我們想在字串“Welcome to Tutorial Point”中查詢子字串“Point”的索引,我們可以使用index()方法如下:
string = "Welcome to Tutorial Point" substring = "Point" index = string.index(substring) print(index)
輸出
20
錯誤處理
當字串中找不到子字串時,index()方法會引發ValueError,而find()方法會返回-1。為了處理index()方法中的此錯誤並顯示輸出“子字串未找到”,我們可以使用try-except塊來處理此錯誤。
示例
如果我們想在字串“Welcome to Tutorials Point”中查詢子字串“Python”的索引,則find()方法將返回-1,而index()方法將引發ValueError,因為子字串不在字串中。以下是我們可以使用try-except塊來處理index函式錯誤的方法。
string = "Welcome to Tutorials Point"
substring = "Python"
try:
index = string.index(substring)
except ValueError:
print("Substring not found")
輸出
Substring not found
當字串中找不到子字串時,find()方法只會返回-1。因此,我們不需要處理find()方法中的任何錯誤。
示例
string = "Welcome to Tutorials Point" substring = "Python" index = string.find(substring) print(index)
輸出
-1
結論
在Python中,我們可以使用find()和index()方法獲取子字串第一次出現的索引。這兩種方法都將子字串、起始索引(可選)和結束索引(可選)作為引數。當找不到子字串時,find()方法返回-1,而index()方法會引發ValueError。我們可以使用Python中的try-except塊來處理ValueError。
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP