发布时间:2019-09-25 08:27:38编辑:auto阅读(2240)
Python中,浮点数运算,经常会碰到如下情况:
出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确。
比如说: 0.1是十进制,转化为二进制后它是个无限循环的数:
0.00011001100110011001100110011001100110011001100110011001100
而python是以双精度(64)位来保存浮点数,多余的位会被截掉,所以看到的是0.1,但在电脑上实际保存的已不是精确的0.1,参与运算后,也就有可能点误差,特别是金融邻域里面,对精度更是要求更高,如何在Python中获取特定位数精度值?
【方法一】利用round方法:
【方法二】利用decimal模块:
上一篇: python对象销毁(垃圾回收)
下一篇: python 支持swagger
48451
47338
38221
35462
29920
26626
25598
20545
20240
18666
58°
70°
174°
118°
144°
261°
336°
332°
309°
399°