What is the best way to compare floats for almost-equality in Python?

后端 未结 15 1608
旧时难觅i
旧时难觅i 2020-11-21 05:07

It\'s well known that comparing floats for equality is a little fiddly due to rounding and precision issues.

For example: https://randomascii.wordpress.com/2012/02/2

15条回答
  •  遥遥无期
    2020-11-21 06:06

    In terms of absolute error, you can just check

    if abs(a - b) <= error:
        print("Almost equal")
    

    Some information of why float act weird in Python https://youtu.be/v4HhvoNLILk?t=1129

    You can also use math.isclose for relative errors

提交回复
热议问题