环境: os: win7 64bit python:2.7.5 32bit 对python四舍五入的解决方案 现象: 一般的四舍五入操作都是使用内置的round方法 In [14]: round(2.675,2) Out[14]: 2.67 文档中这样解释的 The documentation for the built-in round() function says that it rounds to the nearest value, rounding ties away from
小数问题是计算机编程中大部分语言都会遇到的问题,尤其是在内容中涉及到评分.金额计算等等,本人一般在解决需求中固定小数位的数字计算时,都会先将其放大整10的倍数至整数,然后计算.存储,只有在显示的时候再将其缩小至所需的精度:如人民币的计算和存储都是以分为单位. 在学习python的时候同样也会有这样的问题,下面代码只是简单的将输入的小数四舍五入精确到小数点后第二位 from _pydecimal import Decimal exchange = 6.4696 while True: dollar
对于一些貌似很简单常见的函数,最好还是去读一下Python文档,否则当你被某个BUG折磨得死去活来时,还不知根源所在.尤其是Python这种不断更新的语言.(python 2.7 的round和3.3.2不一样) 3.3.2官方文档对round的定义 round(number[, ndigits]) Return the floating point value number rounded to ndigits digits after the decimal point. If ndigit