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