【已解决】Python中如何比较浮点数是否相等

Flask的程序中,需要用到Python的浮点数,要比较两个浮点数是否相等。

虽然此处,比较的是0.0,觉得应该很简单,估计就是:

floatValue == 0.0

即可。

但是还是需要去查查,更精确的比较办法。

python float compare

floating point – What is the best way to compare floats for almost-equality in Python? – Stack Overflow

Python floating point number comparison – Stack Overflow

floating point – compare two floats for equality in Python – Stack Overflow

【总结】

低版本的Python,可以去用:

def isclose(a, b, rel_tol=1e-09, abs_tol=0.0):
    return abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)

高版本的,>Python 3.5的,直接用:

math.isclose

-》

我此处暂时,对于判断是非等于0,就不去用上述的麻烦的办法了。

就直接用:

floatValue == 0.0

算了。

以后判断其它浮点数,再去用上述办法。



One Thought on “【已解决】Python中如何比较浮点数是否相等

  1. 每次遇到问题好像你都先踩了坑 :P

发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量