創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!

小編給大家分享一下python檢查返回某字符串是不是數字的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
python中有一個自帶的函數isdigit,可以返回某字符串是不是數字。如果是數字,返回True;反之,返回False。
str1 = '1' print(str1.isdigit()) str2 = '1.1' print(str2.isdigit()) str3 = '-1' print(str3.isdigit()) str4 = 'a' print(str4.isdigit())
它的運行結果是:
True False False False
可以看到,isdigit函數只能辨別正整數,對小數和負數的判斷都出現(xiàn)了錯誤。
這里介紹一個函數,可以正確分辨小數和負數:
def is_number(s): try: # 如果能運行float(s)語句,返回True(字符串s是浮點數) float(s) return True except ValueError: # ValueError為Python的一種標準異常,表示"傳入無效的參數" pass # 如果引發(fā)了ValueError這種異常,不做任何事情(pass:不做任何事情,一般用做占位語句) try: import unicodedata # 處理ASCii碼的包 unicodedata.numeric(s) # 把一個表示數字的字符串轉換為浮點數返回的函數 return True except (TypeError, ValueError): pass return False
很厲害的是,由于is_number里用到了unicodedata.numeric這個函數,我們現(xiàn)在對漢字表示的數字也可以進行分辨了,測試漢字'八':
str5 = '八' print(is_number(str5))
得到的結果是:
True
看完了這篇文章,相信你對python檢查返回某字符串是不是數字的方法有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)-成都網站建設公司行業(yè)資訊頻道,感謝各位的閱讀!
分享文章:python檢查返回某字符串是不是數字的方法-創(chuàng)新互聯(lián)
標題URL:http://www.chinadenli.net/article4/djdpie.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、自適應網站、企業(yè)建站、全網營銷推廣、做網站、域名注冊
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)