如何在 Python 中檢查字串是否只包含小寫字母?
字串是一組字母,可用於表示單個單詞或整個語句。字串在 Python 中易於使用,因為它們不需要顯式宣告,並且可以使用或不使用說明符來定義。
為了操作和訪問字串,Python 包含了一些內建函式和方法。在 Python 中,字串是 String 類的物件。
在本文中,我們將討論如何在 Python 中檢查字串是否只包含小寫字母。有多種方法可以實現這一點。
使用 islower() 方法
驗證字串中是否存在小寫字母的一種方法是使用字串庫的 islower() 方法。如果當前字串中的每個字元都是小寫,則此方法返回 True,否則返回 False。
示例 1
在下面給出的示例中,我們取兩個字串 str1 和 str2,並檢查它們是否包含除小寫字母以外的任何字元。我們藉助 islower() 函式進行檢查。
str1 = 'abcdef' str2 = 'Abcdef' print("Checking whether",str1,"is lower case") print(str1.islower()) print("Checking whether",str2,"is lower case") print(str2.islower())
輸出
上述程式的輸出為:
('Checking whether', 'abcdef', 'is lower case') True ('Checking whether', 'Abcdef', 'is lower case') False
示例 2
以下是使用 islower() 方法的另一個示例 -
在下面給出的程式中,我們正在檢查如果小寫單詞之間有空格會發生什麼。
str1 = 'welcome to tutorialspoint' print("Checking whether",str1,"is lower case") print(str1.islower())
輸出
上述程式的輸出為:
('Checking whether', 'welcome to tutorialspoint', 'is lower case') True
使用正則表示式
我們還可以使用正則表示式來確定給定字串是否包含小寫字母。為此,匯入 re 庫,如果尚未安裝,請安裝它。
匯入 re 庫後,我們將使用正則表示式“[a-z]+$”。如果字串包含除小寫字元以外的任何字元,則將返回 False;否則,將返回 True。
示例
在下面給出的程式中,我們使用正則表示式“[a-z]+$”來檢查給定的字串是否為小寫。
import re str1 = 'abcdef' str2 = 'Abcdef' print("Checking whether",str1,"is lower case") print(bool(re.match('[a z]+$', str1))) print("Checking whether",str2,"is lowercase") print(bool(re.match('[a z]+$', str2)))
輸出
上述程式的輸出為:
('Checking whether', 'abcdef', 'is lower case') False ('Checking whether', 'Abcdef', 'is lowercase') False
使用 ASCII 值
我們可以遍歷字串的每個字元,並根據 ASCII 值進行驗證。我們知道小寫字母的 ASCII 值從 97 開始,因此我們必須檢查每個 ASCII 值是否大於 97。如果每個 ASCII 值都大於 97,則返回 True,否則返回 False。
示例
在下面給出的示例中,我們編寫了一個函式 checkLower() 並比較該字串中每個字元的 ASCII 值。如果每個字元的 ASCII 值都大於 96 且小於 122,則返回True,否則返回False。
def checkLower(str1): n = len(str1) count = 0 for i in str1: if(122>= ord(i) >= 97): count += 1 if count == n: return True return False str1 = 'abcdef' str2 = 'Abcdef' print("Checking whether",str1,"is lower case") print(checkLower(str1)) print("Checking whether",str2,"is lower case") print(checkLower(str2))
輸出
上述程式的輸出為:
('Checking whether', 'abcdef', 'is lower case') True ('Checking whether', 'Abcdef', 'is lower case') None