当前位置: 代码迷 >> 综合 >> python判断数字—isdigit()、isdecimal()、isnumeric()的区别
  详细解决方案

python判断数字—isdigit()、isdecimal()、isnumeric()的区别

热度:61   发布时间:2024-01-06 05:35:53.0

参考链接:
Python isdigit()函数 - 翔宇亭IT乐园

测试字符串:

【1】"1234"—十进制数字;     【2】 "12.34"—含小数;                 【3】   "???"—上角标数字; 

【4】"1234"—全角数字;  【5】  "ⅠⅡⅢⅣⅤ"—罗马数字    【6】"①②③④⑤"—序号数字;

【7】"1/3"—分数;                   【8】 "?"—Unicode上角标分数;    【9】 "0b1011"—二进制;

【10】"0xAB"—十六进制;      【11】  "1 2 3 4"—带空格;              【12】 "abc123"—带字母;

【13】"@123"—带特殊字符     【14】"一二三四"—汉字数字

1. isdigit()的判断结果

#Python 判断字符串是否为数字
print("1234".isdigit())   #True【1】
print("12.34".isdigit())
print("???".isdigit())    #True【3】
print("1234".isdigit()) #True【4】
print("ⅠⅡⅢⅣⅤ".isdigit())
print("①②③④⑤".isdigit()) #True【6】
print("1/3".isdigit())
print("?".isdigit())
print("0b1011".isdigit())
print("0xAB".isdigit())
print("1 2 3 4".isdigit())
print("abc123".isdigit())
print("@123".isdigit())
print("一二三四".isdigit())

2.isdecimal()的判断结果

print("1234".isdecimal())   #True【1】
print("12.34".isdecimal())
print("???".isdecimal())    
print("1234".isdecimal()) #True【4】
print("ⅠⅡⅢⅣⅤ".isdecimal())
print("①②③④⑤".isdecimal()) 
print("1/3".isdecimal())
print("?".isdecimal())
print("0b1011".isdecimal())
print("0xAB".isdecimal())
print("1 2 3 4".isdecimal())
print("abc123".isdecimal())
print("@123".isdecimal())
print("一二三四".isdecimal())

3.isnumeric()

print("1234".isnumeric())   #True【1】
print("12.34".isnumeric())
print("???".isnumeric())    #True【3】
print("1234".isnumeric()) #True【4】
print("ⅠⅡⅢⅣⅤ".isnumeric())#True【5】
print("①②③④⑤".isnumeric()) #True【6】
print("1/3".isnumeric())
print("?".isnumeric())#True【8】
print("0b1011".isnumeric())
print("0xAB".isnumeric())
print("1 2 3 4".isnumeric())
print("abc123".isnumeric())
print("@123".isnumeric())
print("一二三四".isnumeric())  #True【14】