Python-在Python中,比较float与几乎相等的最佳方法是什么?

发布于 2021-02-02 23:23:49

在Python中,比较float与几乎相等的最佳方法是什么?

关注者
0
被浏览
218
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    Python 3.5添加了PEP 485中描述的math.isclosecmath.isclose功能。

    如果你使用的是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)
    

    rel_tol是一个相对容差,它乘以两个参数中的较大者;当值变大时,它们之间的允许差异也会变大,同时仍将它们视为相等。

    abs_tol是在所有情况下均按原样应用的绝对公差。如果差异小于这些公差中的任何一个,则认为值相等。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看