1. 程式人生 > 其它 >Python 判斷字串是否都由數字組成

Python 判斷字串是否都由數字組成

1、使用isdecimal()方法

# isdecimal() 方法檢查字串是否只包含十進位制字元。這種方法只存在於unicode物件。
# python3中儲存字串就是用的Unicode編碼方式儲存。https://www.jianshu.com/p/2bb8a1300bfd
# 注意:定義一個十進位制字串,只需要在字串前新增 'u' 字首即可。
string = '123'
print(string.isdecimal())  # True
string = '0123456789'
print(string.isdecimal())  # True
string = '123F'
print(string.isdecimal())  #
False string = '123好' print(string.isdecimal()) # False string = '' print(string.isdecimal()) # False

2、使用isdigit()方法

# isdigit() 方法檢測字串是否只由數字組成。
# 如果字串只包含數字則返回 True 否則返回 False
string = '123'
print(string.isdigit())  # True
string = '0123456789'
print(string.isdigit())  # True
string = '123F'
print
(string.isdigit()) # False string = '123好' print(string.isdigit()) # False string = '' print(string.isdigit()) # False

3、使用isnumeric()方法

# isnumeric() 方法檢測字串是否只由數字組成。這種方法是隻針對unicode物件。
# python3中儲存字串就是用的Unicode編碼方式儲存。https://www.jianshu.com/p/2bb8a1300bfd
# 注:定義一個字串為Unicode,只需要在字串前新增 'u' 字首即可
string = '
123' print(string.isnumeric()) # True string = '0123456789' print(string.isnumeric()) # True string = '123F' print(string.isnumeric()) # False string = '123好' print(string.isnumeric()) # False string = '' print(string.isnumeric()) # False

4、使用try異常機制

def is_int(number):
    flag = False
    try:
        int(number)
        flag = True
    except:
        pass
    return flag
string = '123'
print(is_int(string))  # True
string = '0123456789'
print(is_int(string))  # True
string = '123F'
print(is_int(string))  # False
string = '123好'
print(is_int(string))  # False
string = ''
print(is_int(string))  # False

5、學習連結記錄

菜鳥教程連結 :https://www.runoob.com/python/att-string-isnumeric.html