在Python中,與字串的操作是基礎性的,而找出特定字符或子字串的索引常常是必要的。本文將探討兩個關鍵方法的使用,以達到此一目的:str.find()
與 str.index()
。我們將探討這些方法的運作方式,並辨認其間的差異。
str.find()
方法str.find()
方法會回傳指定值首次出現的起始索引。若未找到值,則會回傳 -1。
text = "Python is wonderful"
index = text.find("is")
print(index) # Output: 7
在這裡,str.find()
方法回傳 2,即子字串 "是" 起始的索引。
str.index()
方法str.index()
方法與 str.find()
相似,但若未找到值,會引發異常。
text = "Python is wonderful"
index = text.index("is")
print(index) # 輸出:7
# 引發 ValueError
try:
index = text.index("Java")
except ValueError:
print("Value not found")
str.find()
與 str.index()
之間的差異主要的差異在於當未找到值時的處理方式:
str.find()
:回傳 -1str.index()
:引發異常str.find()
與 str.index()
在特定範圍內搜尋兩個方法都允許您指定起始和結束位置,在特定範圍內進行搜尋。
text = "Python is wonderful, Python is great"
# 使用 find
find_index = text.find("Python", 25, 30)
print(find_index) # 輸出:-1
# 使用帶有例外處理的 index
try:
index_index = text.index("Python", 25, 30)
except ValueError:
index_index = -1
print(index_index) # 輸出:-1
此範例示範如何使用這兩種方法將搜尋限制在特定範圍內,並使用 str.index()
處理異常。
透過 Python 的 str.find()
與 str.index()
方法,我們能夠直觀地了解如何在字串中找到字元或子字串的位置。它們能夠有效地在字串內進行搜尋,其行為會依據值是否被找到而有所不同。
str.find()
與 str.index()
主要的差異是什麼?
主要差異在於當值未被找到時的處理方式;str.find()
會回傳 -1,str.index()
會引發異常。str.find()
會回傳 -1,而 str.index()
會引發 ValueError 異常。[Python] 通過各種實例深入理解位元運算符 |
---|
[Python] 通過各種實例深入理解關係運算符 |
[Python] 解決 'zsh: command not found: python' 錯誤的方法 |
[Python] 通過各種實例深入理解賦值運算符 |
[Python] 通過各種實例深入理解算術運算符 |
CloneCoding
創新從一行代碼開始!