str.isdecimal() 是否十进制数字
最后更新:2026-09-22
str.isdecimal() 是否十进制数字
str.isdecimal() 非空且每个字符都是十进制数字字符(Unicode Decimal)时返回 True。
| 分类 | 字符串方法 |
|---|---|
| 类型 | 内建类型方法 |
| Python 版本 | all |
📝 语法
str.isdecimal()
返回值:bool。字符串非空且每个字符都是十进制数字(Unicode Nd 类)时返回 True。
是否修改原对象:否(返回新对象)
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
True
False
False
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qisdecimal() 和 isdigit() 的区别?
Aisdecimal() 只认十进制数字(Unicode Nd 类):'²'.isdecimal() 是 False,而 '²'.isdigit() 是 True。isdecimal() 更严格。
Q汉字数字呢?
A'一二三'.isdecimal() 是 False(汉字数字只有 isnumeric() 才返回 True)。
Q能用来判断"可以安全 int()"吗?
A不完全行。全角数字 '123'.isdecimal() 是 True,但 int('123') 会抛 ValueError。严谨校验要结合 isascii()。