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

后端 未结 15 1555
旧时难觅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 05:49

    Use Python's decimal module, which provides the Decimal class.

    From the comments:

    It is worth noting that if you're doing math-heavy work and you don't absolutely need the precision from decimal, this can really bog things down. Floats are way, way faster to deal with, but imprecise. Decimals are extremely precise but slow.

提交回复
热议问题