python decimal四舍五入精确保留2位小数

Python014

python decimal四舍五入精确保留2位小数,第1张

python保留2位小数一般用以下几种:

①round函数

②format(float_num,'0.2f')

③decimal

一、先说下这次的重点想说的decimal,可以精确的四舍五入保留两位小数。

①可以传给decimal整形或者字符型,不能传浮点型,因为浮点型本身就是不精确的数

但是如果一定要是浮点型,可以以下:

正常情况下

二、round函数,大部分情况下可以四舍五入,但是遇到要保留位数后一位是5时,是不会进1位的

三、format和round类似

使用round()方法时,出现精度问题,导致四舍五入结果错误

例如:使用round()方法,3.545四舍五入后为3.54

使用decimal模块,已验证5000+次,具体操作见例子

输出结果:

是利用原来的向下取整的机制如果原来是

实际上Python的round()函数可以接受两个参数round(value,ndigits),第一个参数为实际操作数,第二个参数为实际保留几位,如果第二个参数不填,则默认保留到整数位。

Python3.X对于浮点数默认的是提供17位数字的精度。