如何在 Python 里面精确四舍五入?

250 阅读1分钟

可以先看下文章:cloud.tencent.com/developer/a…

不过因为我这边python2,python3的环境都有

然后发现了2和3的区别


首先2,3的float都是遵循HALF_ROUND_EVEN

3的decimal遵循HALF_ROUND_UP,但是2不遵循。。最后找到方法

price = (decimal.Decimal(str('12.35')) / 100).quantize(decimal.Decimal('.01'), decimal.ROUND_HALF_UP)

要用decimal的quantize方法,用round或者context是没用的