【发布时间】:2017-04-26 12:18:52
【问题描述】:
我想检查我的值是带点还是逗号的浮点数,但 isdigit() 返回带点的 false。我想知道为什么以及如何通过它。
> value = "0.0"
> print value.isdigit():
>>> False
我的代码是:
if "." in value and value.isdigit()
print "ok"
【问题讨论】:
-
因为
.不是数字。isdigit()仅对包含 only 个数字的字符串返回 true。 -
这在任何时候都不是真的,因为一件事不可能与另一件事在一起。
-
但是“0.0”是一个浮点数,所以对我来说它也是一个数字还是不同?
-
"0.0"不是数字。"0"是一个数字。"0.0"是一个包含两个数字和一个"."字符的字符串。参见dictionary.com/browse/digit,特别是定义3。 -
“数字”不代表“数字”
标签: python python-2.7 floating-point digit