使用 Python String 字串的 startswith() 和 endswith() 語法
在 Python 中,我們可以使用 startswith() 和 endswith() 函數來判斷字串是否以特定的字元開頭或結尾。
使用 startswith() 函數判斷字串是否以特定字元開頭
使用 startswith() 函數時,我們需要傳入一個字元或字串,作為判斷的標準。如果字串以傳入的字元或字串開頭,就會傳回 True
;否則傳回 False
。例如:
text = "Hello, World!" result = text.startswith("H") print(result) # 顯示:True result = text.startswith("h") print(result) # 顯示:False result = text.startswith("Hello") print(result) # 顯示:True
注意,startswith() 函數是大小寫敏感的,所以在判斷字元時,必須注意大小寫。
使用 endswith() 函數判斷字串是否以特定字元結尾
使用 endswith() 函數時,也需要傳入一個字元或字串,作為判斷的標準。如果字串 text
以傳入的字元或字串結尾,則 endswith() 函數會傳回 True
,否則傳回 False
。
例如,如果你想判斷字串 text
是否以字元 'a'
結尾,可以使用下列的程式碼:
text = "Hello, World!" result = text.endswith('a') print(result) # 顯示:False
你也可以使用 endswith() 函數,判斷字串 text
是否以字串 'orld!'
結尾。例如:
text = "Hello, World!" result = text.endswith('orld!') print(result) # 顯示:True
注意,在使用 startswith() 和 endswith() 函數時,傳入的字元或字串必須是字串類型。如果傳入的不是字串類型,就會發生錯誤。例如:
text = "Hello, World!" # 傳入數字 result = text.endswith(123) # 發生錯誤:TypeError: endswith first arg must be str or a tuple of str, not int # 傳入布林值 result = text.startswith(True) # 發生錯誤:TypeError: startswith first arg must be str or a tuple of str, not bool
因此,在使用 startswith() 和 endswith() 函數時,一定要注意傳入的字元或字串是否為字串類型。
另外,startswith() 和 endswith() 函數也可以接受一個 tuple,作為判斷的標準。例如:
text = "Hello, World!" # 傳入 tuple result = text.endswith((".txt", ".pdf")) # False result = text.endswith(("!","?")) # True
在這個範例中,我們使用了 endswith() 函數,判斷 text
是否以 “.txt” 或 “.pdf” 結尾,或是以 “!” 或 “?” 結尾。
最後,如果你想要使用 startswith() 和 endswith() 函數,請記得引入 string 模組。例如:
import string text = "Hello, World!" result = text.startswith("Hello") # True result = text.endswith("World") # False
現在,我們來看一個實際的範例,看看 startswith() 和 endswith() 函數在實際操作中是如何使用的。
# 判斷文件名是否以 ".txt" 為結尾 filename = "example.txt" result = filename.endswith(".txt") # result 為 True # 判斷文件名是否以 "example" 開頭 filename = "example.txt" result = filename.startswith("example") # result 為 True # 判斷文件名是否以 "EXAMPLE" 開頭 filename = "example.txt" result = filename.startswith("EXAMPLE") # result 為 False # 判斷文件名是否以 "txt" 為結尾 filename = "example.txt" result = filename.endswith("txt") # result 為 True
在這個範例中,我們使用了 endswith() 函數來判斷文件名是否以 “.txt” 為結尾,使用 startswith() 函數來判斷文件名是否以 “example” 開頭。
注意,endswith() 和 startswith() 函數的參數是可選的,如果不傳入參數,那麼預設會檢查字串是否以空白字元結尾或開頭。例如:
text = " Hello, World! " result = text.startswith() # 返回 True,因為字串以空白字元開頭 result = text.endswith() # 返回 True,因為字串以空白字元結尾
如果你想要檢查字串是否以某個字元或字串結尾或開頭,可以傳入這個字元或字串作為參數。例如:
text = "Hello, World!" result = text.startswith("H") # 返回 True,因為字串以 H 開頭 result = text.endswith("!") # 返回 True,因為字串以 ! 結尾
最後,如果你想要使用 startswith() 和 endswith()函數,你可以使用以下程式碼:
text = "Hello, world!" # 使用 startswith() 函數判斷字串是否以 "Hello" 開始 if text.startswith("Hello"): print("字串以 'Hello' 開始") else: print("字串不以 'Hello' 開始") # 使用 endswith() 函數判斷字串是否以 "world!" 結尾 if text.endswith("world!"): print("字串以 'world!' 結尾") else: print("字串不以 'world!' 結尾")
這樣,你就可以使用 startswith() 和 endswith() 函數,輕鬆地判斷字串的開頭和結尾是否符合要求。
在寫文章時,你可以使用 startswith() 和 endswith() 函數,判斷標題或其他文本是否符合要求。例如,你可以使用 startswith() 函數,判斷標題是否以特定的字元或字串開始,或是使用 endswith() 函數,判斷標題是否以特定的字元或字串結尾。這樣,你就可以輕鬆地確保標題的格式和內容符合要求。
當然,你也可以使用 startswith() 和 endswith() 函數,在程式碼中處理文件名或其他字串。例如,你可以使用 endswith() 函數,將所有以 “.txt” 結尾的文件名列出來。你也可以使用其他方法,例如列表推導式,來達到同樣的效果。
import os # 列出當前目錄下的所有文件 files = os.listdir() # 遍歷文件,如果文件名以 ".txt" 結尾,就顯示 for file in files: if file.endswith(".txt"): print(file)
此外,你還可以使用 startswith() 函數,判斷文件名是否以某個字串開頭。例如,你可以使用下列的程式碼,列出所有以 “note” 開頭的文件名:
import os # 列出當前目錄下的所有文件 files = os.listdir() # 遍歷文件,如果文件名以 "note" 開頭,就顯示 for file in files: if file.startswith("note"): print(file)
總之,透過使用 startswith() 和 endswith() 函數,你可以輕鬆地判斷字串的開頭和結尾,為你的程式帶來更多的灵活性和彈性。