Python中浮点数精度处理
生活随笔
收集整理的這篇文章主要介紹了
Python中浮点数精度处理
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
from:
Python中浮點(diǎn)數(shù)精度處理
Python中,浮點(diǎn)數(shù)運(yùn)算,經(jīng)常會(huì)碰到如下情況:
出現(xiàn)上面的情況,主要還是因浮點(diǎn)數(shù)在計(jì)算機(jī)中實(shí)際是以二進(jìn)制保存的,有些數(shù)不精確。
比如說(shuō): 0.1是十進(jìn)制,轉(zhuǎn)化為二進(jìn)制后它是個(gè)無(wú)限循環(huán)的數(shù):
0.00011001100110011001100110011001100110011001100110011001100
而python是以雙精度(64)位來(lái)保存浮點(diǎn)數(shù),多余的位會(huì)被截掉,所以看到的是0.1,但在電腦上實(shí)際保存的已不是精確的0.1,參與運(yùn)算后,也就有可能點(diǎn)誤差,特別是金融鄰域里面,對(duì)精度更是要求更高,如何在Python中獲取特定位數(shù)精度值?
【方法一】利用round方法:
【方法二】利用decimal模塊:
總結(jié)
以上是生活随笔為你收集整理的Python中浮点数精度处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux下命令行压缩照片或图片的脚本
- 下一篇: 【Keras】基于SegNet和U-Ne