Python 判斷字串是否為數字

Document 對象參考手冊 Python3 實例

以下實例通過創建自定義函數 is_number() 方法來判斷字串是否為數字:

實例(Python 3.0+)

# -*- coding: UTF-8 -*- # Filename : test.py # author by : www.xuhuhu.com def is_number(s): try: float(s) return True except ValueError: pass try: import unicodedata unicodedata.numeric(s) return True except (TypeError, ValueError): pass return False # 測試字串和數字 print(is_number('foo')) # False print(is_number('1')) # True print(is_number('1.3')) # True print(is_number('-1.37')) # True print(is_number('1e3')) # True # 測試 Unicode # 阿拉伯語 5 print(is_number('٥')) # True # 泰語 2 print(is_number('')) # True # 中文數字 print(is_number('')) # True # 版權號 print(is_number('©')) # False

我們也可以使用內嵌 if 語句來實現:

執行以上代碼輸出結果為:

False
True
True
True
True
True
True
True
False

更多方法

Python isdigit() 方法檢測字串是否只由數字組成。

Python isnumeric() 方法檢測字串是否只由數字組成。這種方法是只針對unicode對象。

Document 對象參考手冊 Python3 實例