Ill*_*ist 3 python validation numbers
有没有一种快速的方法来查找字符串是否为实数,而不是一次只读取一个字符isdigit()
并对每个字符进行操作?例如,我希望能够测试浮点数0.03001
.
orl*_*rlp 12
如果你的意思是浮动作为实数,这应该工作:
def isfloat(str):
try:
float(str)
except ValueError:
return False
return True
Run Code Online (Sandbox Code Playgroud)
请注意,这将在内部仍然循环您的字符串,但这是不可避免的.
>>> a = "12345" # good number
>>> int(a)
12345
>>> b = "12345G" # bad number
>>> int(b)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '12345G'
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
def isNumber(s):
try:
int(s)
except ValueError:
return False
return True
Run Code Online (Sandbox Code Playgroud)
如果你想要一个浮点数,请替换int
为float
(感谢@cobbal).
归档时间: |
|
查看次数: |
8503 次 |
最近记录: |