首先,我們知道判斷字符串類別的函數有:
字符串.isalnum() 所有字符都是數字或者字母,爲真返回 Ture,否則返回 False。
字符串.isalpha() 所有字符都是字母,爲真返回 Ture,否則返回 False。
字符串.isdigit() 所有字符都是數字,爲真返回 Ture,否則返回 False。
字符串.islower() 所有字符都是小寫,爲真返回 Ture,否則返回 False。
字符串.isupper() 所有字符都是大寫,爲真返回 Ture,否則返回 False。
字符串.istitle() 所有單詞都是首字母大寫,爲真返回 Ture,否則返回 False。
字符串.isspace() 所有字符都是空白字符,爲真返回 Ture,否則返回 False。
但是,我們現在可以換一種方法來判斷,把“判斷用戶輸入的字符串是否有小寫字母和數字組成”當作一條小題目,自己編寫一個函數來判斷:
這裏我們要用到ASCII碼來判斷字符串了,48-57:數字0-9,97-122:小寫字母,可以百度瞭解更詳細的ASCII碼。
#編寫一個函數,判斷輸入的字符串是否由小寫字母和數字組成
char = input("請輸入一個需要判斷的字符串:")
lenght = len(char)
j = 0 #與字符串長度作比較條件
a = 0 #用於記錄在ASCII碼內並累加,最後和字符串長度一致則認爲是以下結論
while j <= lenght :
for i in char :
num = ord(i) #ord()把字符串轉爲ASCII碼
if num >= 48 and num <= 57 or num >= 97 and num <= 122 :
a += 1 #在範圍內就累加
j += 1
if a == j : #判斷累加結果與字符串長度
print("該字符串由小寫字母和數字組成")
else:
print("該字符串包含大寫字母或者是符號!")