Python四舍五入
Python精确四舍五入的简单实现。
操作方法
- 01
通常,python四舍五入使用内置的round函数就可以了 >>> round(0.4) 0.0 >>> round(0.5) 1.0
- 02
然而,对于需要精确的四舍五入,就有问题 >>> round(1.115,2) # no 1.11 >>> round(1.125,2) # yes 1.13
- 03
原因是,部分小数无法完全用二进制表示
- 04
再来看一下步骤一的两个数值
- 05
于是,作为一个较方便的做法,我们可以使用下面方式实现精确的四舍五入: def round_up(value): """四舍五入保留2位小数 :param value:数值 :return:四舍五入后的值 """ # 替换内置round函数,实现保留2位小数的精确四舍五入 return round(value * 100) / 100.0
- 06
原理就是将数值放大100倍,以利用下面的精确的四舍五入的结果
- 07
测试一下: >>> round_up(1.115) 1.12 >>> round_up(1.125) 1.13
赞 (0)