取整函数round(x[,n])document将返回浮点数, 其值数值是取整到小数点后的n位精度上.n缺省值位0. 取整规则官方文档的说法是: 取整到距离 10−n 位数上最近的那一个值. 一般情况下取整规则是四舍五入法则.在python 2.7.8的交互环境中
>>>round(3.5) >>>4.0 >>>round(-2.5) >>>-3.0这都符合我们的预期, 但是由于计算机存储浮点数的限制, 也有例外:
>>>round(2.675,2) >>>2.67在 python3 中round函数有了新的改动,即取整到偶数部分, 在python 3.6.1 交互环境下:
>>>round(0.5) >>>0 >>>round(1.5) >>>2 >>>round(2.5) >>>2事实上python3实行的是标准的取整方法.IEEE75标准中共有五种取整方式(python 2 采用的是ROUND_HALF_UP). 你可以控制round取整的方法通过decimal包.
>>> from decimal import Decimal >>> import decimal >>> float_num = Decimal('0.5') >>> float_num.quantize(Decimal('0'), rounding=decimal.ROUND_HALF_UP) >>> Decimal('1') >>> float_num.quantize(Decimal('0'), rounding=decimal.ROUND_HALF_EVEN) >>> Decimal('0') >>> float_num.quantize(Decimal('0'), rounding=decimal.ROUND_HALF_DOWN) >>> Decimal('0')