日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python中isdigit()?isalpha()用于判斷字符串的類型問題_python

作者:努力學python的設計師 ? 更新時間: 2022-12-06 編程語言

isdigit() isalpha()用于判斷字符串的類型

要求1

統計某個字符串中的數字數量并輸出,例如字符串為“adsfsd1adf23sdfa12”

思路:遍歷字符串,用isdigit()方法判斷是否為數字,如果為數字,統計+1

代碼如下:

str=input("請輸入任意字符串")
num=0 ? #統計基數
for i in str: ?#遍歷字符串
? ? if i.isdigit(): ? ? #判斷是否為數字
? ? ? ? num+=1
print(num)

要求2

在要求1的基礎中統計出現數字的次數,比如12dsd23dsddf1,其中出現數字12,23,1共3次。

思路:此時如果利用上述思路,無法實現要求,故轉換思路。

  • 1.遍歷字符串,用 isalpha()判斷字符串類型是否Wie字符串
  • 2.將字符串中的字符都換成空格,此時字符串中只有數字和空格
  • 3.將原有字符串用split()轉換為列表
  • 4.統計列表元素長度

代碼如下:

s=input("")
num=0 ? #統計基數
for i in s: #遍歷字符串
? ? if i.isalpha(): #判斷是否為字符串
? ? ? ? s=s.replace(i," ") ?#如果是字符串,替換為空格
b=s.split() ? ? #拆分字符串
print(len(b)) ? #統計字符串長度

isdigit()、isalpha()、isalnum() 三個函數的區別和注意點

一、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())

# 執行結果:
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())

#執行結果
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())

#執行結果
True
True
False

注意點:

1.python官方定義中的字母:大家默認為英文字母+漢字即可

2.python官方定義中的數字:大家默認為阿拉伯數字+帶圈的數字即可

相信只要理解到這兩點,這三個函數的在使用時的具體返回值,大家就很明確了~~

原文鏈接:https://blog.csdn.net/aa12551827/article/details/104367683

欄目分類
最近更新