发布时间:2019-09-25 08:27:38编辑:auto阅读(2278)
Python中,浮点数运算,经常会碰到如下情况:
出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确。
比如说: 0.1是十进制,转化为二进制后它是个无限循环的数:
0.00011001100110011001100110011001100110011001100110011001100
而python是以双精度(64)位来保存浮点数,多余的位会被截掉,所以看到的是0.1,但在电脑上实际保存的已不是精确的0.1,参与运算后,也就有可能点误差,特别是金融邻域里面,对精度更是要求更高,如何在Python中获取特定位数精度值?
【方法一】利用round方法:
【方法二】利用decimal模块:
上一篇: python对象销毁(垃圾回收)
下一篇: python 支持swagger
48677
47693
38477
35691
30134
26862
25883
20739
20495
18891
211°
284°
317°
335°
328°
321°
374°
438°
567°
556°