创建时间: 2017/12/5 17:08
作者: CN_Simo
标签: python基础, round, 四舍五入

 

一、这不是一个BUG!



在使用 round() 的时候,发现
PYTHON3 中的虚假四舍五入:round()
可以发现,有一些数字并没有真正的四舍五入!
这就很疑惑了,查阅资料发现,在python2中这还是正常的。
  • python2 中对 round() 的定义为:在  10的负ndigits次方  的倍数  取离  number  最近的数字返回,如果存在两个倍数离number一样近,那么取远离0的
  • python3 中对 round() 的定义为:在  10的负ndigits次方  的倍数  取离  number  最近的数字返回,如果存在两个倍数离number一样近,那么取偶数
 
官方文档中 round() 的说法:【参考链接】
 PYTHON3 中的虚假四舍五入:round()
这并不是一个BUG!
我还是想不通为什么 round 要做成这样的,但毫无疑问这是一个坑!
 

二、精确的四舍五入方法总结:【参考链接】



法1:
PYTHON3 中的虚假四舍五入:round()
法2:
PYTHON3 中的虚假四舍五入:round()
 
还有在 python3 中 '/' 就是普通的除,整除是 '//'
 
 
 
我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan

相关文章:

  • 2021-07-30
  • 2022-12-23
  • 2022-12-23
  • 2022-03-02
  • 2022-12-23
  • 2022-12-23
  • 2022-01-05
猜你喜欢
  • 2021-12-17
  • 2022-02-14
  • 2022-02-09
  • 2021-09-12
  • 2021-11-29
  • 2021-11-29
  • 2021-10-23
相关资源
相似解决方案