關(guān)于Python中浮點數(shù)精度處理的技巧總結(jié)
前言
最近在使用Python的時候遇到浮點數(shù)運算,發(fā)現(xiàn)經(jīng)常會碰到如下情況:
出現(xiàn)上面的情況,主要還是因浮點數(shù)在計算機(jī)中實際是以二進(jìn)制保存的,有些數(shù)不精確。
比如說: 0.1是十進(jìn)制,轉(zhuǎn)化為二進(jìn)制后它是個無限循環(huán)的數(shù):
0.00011001100110011001100110011001100110011001100110011001100
而python是以雙精度(64)位來保存浮點數(shù),多余的位會被截掉,所以看到的是0.1,但在電腦上實際保存的已不是精確的0.1,參與運算后,也就有可能點誤差,特別是金融鄰域里面,對精度更是要求更高,如何在Python中獲取特定位數(shù)精度值?
【方法一】利用round方法:
【方法二】利用decimal模塊:
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- python3 小數(shù)位的四舍五入(用兩種方法解決round 遇5不進(jìn))
- Python判斷字符串是否為字母或者數(shù)字(浮點數(shù))的多種方法
- python讀取浮點數(shù)和讀取文本文件示例
- python中實現(xiàn)精確的浮點數(shù)運算詳解
- Python字符串轉(zhuǎn)換成浮點數(shù)函數(shù)分享
- Python兩個整數(shù)相除得到浮點數(shù)值的方法
- python使用正則搜索字符串或文件中的浮點數(shù)代碼實例
- python中精確輸出JSON浮點數(shù)的方法
- python十進(jìn)制和二進(jìn)制的轉(zhuǎn)換方法(含浮點數(shù))
- Python浮點數(shù)四舍五入問題的分析與解決方法
相關(guān)文章
Python用類實現(xiàn)撲克牌發(fā)牌的示例代碼
這篇文章主要介紹了Python用類實現(xiàn)撲克牌發(fā)牌的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06詳細(xì)解析Python中的變量的數(shù)據(jù)類型
這篇文章主要介紹了詳細(xì)解析Python中的變量的數(shù)據(jù)類型,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識,需要的朋友可以參考下2015-05-05Django使用AJAX調(diào)用自己寫的API接口的方法
這篇文章主要介紹了Django使用AJAX調(diào)用自己寫的API接口的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-03-03