python中isdigit() isalpha()用于判斷字符串的類型問題
isdigit() isalpha()用于判斷字符串的類型
要求1
統(tǒng)計某個字符串中的數字數量并輸出,例如字符串為“adsfsd1adf23sdfa12”
思路:遍歷字符串,用isdigit()方法判斷是否為數字,如果為數字,統(tǒng)計+1
代碼如下:
str=input("請輸入任意字符串") num=0 ? #統(tǒng)計基數 for i in str: ?#遍歷字符串 ? ? if i.isdigit(): ? ? #判斷是否為數字 ? ? ? ? num+=1 print(num)
要求2
在要求1的基礎中統(tǒng)計出現數字的次數,比如12dsd23dsddf1,其中出現數字12,23,1共3次。
思路:此時如果利用上述思路,無法實現要求,故轉換思路。
- 1.遍歷字符串,用 isalpha()判斷字符串類型是否Wie字符串
- 2.將字符串中的字符都換成空格,此時字符串中只有數字和空格
- 3.將原有字符串用split()轉換為列表
- 4.統(tǒng)計列表元素長度
代碼如下:
s=input("") num=0 ? #統(tǒng)計基數 for i in s: #遍歷字符串 ? ? if i.isalpha(): #判斷是否為字符串 ? ? ? ? s=s.replace(i," ") ?#如果是字符串,替換為空格 b=s.split() ? ? #拆分字符串 print(len(b)) ? #統(tǒng)計字符串長度
isdigit()、isalpha()、isalnum() 三個函數的區(qū)別和注意點
一、isdigit()
python關于 isdigit() 內置函數的官方定義:
S.isdigit() -> bool ? ? ? ? ? ? ? ? Return True if all characters in S are digits ? ? ? ? and there is at least one character in S, False otherwise.
翻譯:
S.isdigit()返回的是布爾值:True False
S中至少有一個字符且如果S中的所有字符都是數字,那么返回結果就是True;否則,就返回False
S1 = '12345' ? ? ? #純數字 S2 = '①②' ? ? ? ?#帶圈的數字 S3 = '漢字' ? ? ? ?#漢字 S4 = '%#¥' ? ? ? ?#特殊符號 print(S1.isdigit()) print(S2.isdigit()) print(S3.isdigit()) print(S4.isdigit()) # 執(zhí)行結果: True ? ?? True False False
二、isalpha()
python關于 isalpha() 內置函數的官方定義:
S.isalpha() -> bool ? ? ? ? ? ? ? ? Return True if all characters in S are alphabetic ? ? ? ? and there is at least one character in S, False otherwise.
翻譯:
S.isalpha()返回的是布爾值:True False
S中至少有一個字符且如果S中的所有字符都是字母,那么返回結果就是True;否則,就返回False
S1 = 'abc漢字' ? ? #漢字+字母 S2 = 'ab字134' ? ? #包含數字 S3 = '*&&' ? ? ? ? #特殊符號 print(S1.isalpha()) print(S2.isalpha()) print(S3.isalpha()) #執(zhí)行結果 True False False
三、isalnum()
python關于 isalnum() 內置函數的官方定義:
S.isalnum() -> bool? ? ? ? ? Return True if all characters in S are alphanumeric ? ? ? ? and there is at least one character in S, False otherwise.
翻譯:
S.isalnum()返回的是布爾值:True False
S中至少有一個字符且如果S中的所有字符都是字母數字,那么返回結果就是True;否則,就返回False
S1 = 'abc漢字1' ? ?#字母+漢字+數字 S2 = '①②③' ? ? ?#帶圈的數字 S3 = '%……&' ? ? ? #特殊符號 print(S1.isalnum()) print(S2.isalnum()) print(S3.isalnum()) #執(zhí)行結果 True True False
注意點:
1.python官方定義中的字母:大家默認為英文字母+漢字即可
2.python官方定義中的數字:大家默認為阿拉伯數字+帶圈的數字即可
相信只要理解到這兩點,這三個函數的在使用時的具體返回值,大家就很明確了~~
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python MySQLdb模塊連接操作mysql數據庫實例
這篇文章主要介紹了Python MySQLdb模塊連接操作mysql數據庫實例,本文直接給出操作mysql代碼實例,包含創(chuàng)建表、插入數據、插入多條數據、查詢數據等內容,需要的朋友可以參考下2015-04-04python實現簡單聊天應用 python群聊和點對點均實現
這篇文章主要為大家詳細介紹了python實現簡單聊天應用,python群聊和點對點均實現,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09Python虛擬環(huán)境virtualenv創(chuàng)建及使用過程圖解
這篇文章主要介紹了Python虛擬環(huán)境virtualenv創(chuàng)建及使用過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-12-12