发布时间:2019-09-25 08:27:38编辑:auto阅读(2884)
Python中,浮点数运算,经常会碰到如下情况:

出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确。
比如说: 0.1是十进制,转化为二进制后它是个无限循环的数:
0.00011001100110011001100110011001100110011001100110011001100
而python是以双精度(64)位来保存浮点数,多余的位会被截掉,所以看到的是0.1,但在电脑上实际保存的已不是精确的0.1,参与运算后,也就有可能点误差,特别是金融邻域里面,对精度更是要求更高,如何在Python中获取特定位数精度值?
【方法一】利用round方法:

【方法二】利用decimal模块:

上一篇: python对象销毁(垃圾回收)
下一篇: python 支持swagger
52705
52621
42763
39642
34019
30978
29773
24664
24505
22891
244°
251°
310°
304°
341°
494°
477°
496°
567°
495°