鱼C论坛

 找回密码
 立即注册
查看: 1867|回复: 4

[已解决]为什么小数在isdigit中返回False

[复制链接]
发表于 2020-2-14 11:26:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> a=5.2
>>> a.isdigit()
Traceback (most recent call last):
  File "<pyshell#16>", line 1, in <module>
    a.isdigit()
AttributeError: 'float' object has no attribute 'isdigit'
>>> a="5.2"
>>> a.isdigit()
False
>>> a.isnumeric()
False
>>> a = 5
>>> a = "5"
>>> a.isnumeric()
True
>>> a.isdigit()
True
最佳答案
2020-2-14 13:08:50
注意isdigit方法的解释:检测字符串是否只由数字组成
而你那个'5.2'的字符串可以分为['5','.','2']
这样的话就不是完全由数字组成的字符串
你也可以这样想:这个方法只支持整形的数据
可以理解吗
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-2-14 11:32:24 From FishC Mobile | 显示全部楼层
提示狠明显啊,浮点类型没有那个is.....的方法
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-14 12:03:56 | 显示全部楼层
isdigit() 如果字符串中只包含数字 则 返回True 否则 返回False
详见 小甲鱼视频 014讲:字符串:各种奇葩的方法
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-14 13:08:50 | 显示全部楼层    本楼为最佳答案   
注意isdigit方法的解释:检测字符串是否只由数字组成
而你那个'5.2'的字符串可以分为['5','.','2']
这样的话就不是完全由数字组成的字符串
你也可以这样想:这个方法只支持整形的数据
可以理解吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-14 14:16:49 | 显示全部楼层
浮点数没有 isdigit() 方法,要就这样:

  1. >>> a = '5.2'
  2. >>> a.isdigit()
  3. False
复制代码


不过 isdigit() 方法遇到小数是返回 False 的。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-11 04:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表