PYTHON3 中的虛假四舍五入:round()


PYTHON3 中的虛假四舍五入:round()

創建時間: 2017/12/5 17:08
作者: CN_Simo
標簽: python基礎, round, 四舍五入

 

一、這不是一個BUG!



在使用 round() 的時候,發現
可以發現,有一些數字並沒有真正的四舍五入!
這就很疑惑了,查閱資料發現,在python2中這還是正常的。
  • python2 中對 round() 的定義為:在  10的負ndigits次方  的倍數  取離  number  最近的數字返回,如果存在兩個倍數離number一樣近,那么取遠離0的
  • python3 中對 round() 的定義為:在  10的負ndigits次方  的倍數  取離  number  最近的數字返回,如果存在兩個倍數離number一樣近,那么取偶數
 
官方文檔中 round() 的說法:【參考鏈接】
 
這並不是一個BUG!
我還是想不通為什么 round 要做成這樣的,但毫無疑問這是一個坑!
 

二、精確的四舍五入方法總結:【參考鏈接】



法1:
法2:
 
還有在 python3 中 '/' 就是普通的除,整除是 '//'
 
 
 
我的博客即將搬運同步至騰訊雲+社區,邀請大家一同入駐:https://cloud.tencent.com/developer/support-plan


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM