您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python中的近似比较

python中的近似比较

您的定义有两个问题:

缺少 *

将尝试除以零,如果x + y == 0.0(其中涵盖了可能是常见的情况x == y == 0.0

尝试以下方法

define approx_Equal(x, y, tolerance=0.001):
    return abs(x-y) <= 0.5 * tolerance * (x + y)

编辑:请注意需要使用<=而不是<…来使x == y == 0.0案例正常工作。

我不会尝试覆盖 ==

编辑2:您写道:

世界上没有人会想对浮点数使用认==。为什么甚至在语言中也是如此?

没门?假设您有一个返回浮点数的函数,并且对算法产生了很大的兴趣,该算法将更快和/或更优雅地产生相同的答案;你如何测试呢?

python 2022/1/1 18:27:43 有369人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶