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

<!-- body, td { font-family: 微软雅黑; font-size: 10pt; -->

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 中 '/' 就是普通的除,整除是 '//'

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java开发者杂谈

For update带来的思考

​ 之所以想写这个专题,是因为最近在做一个抢占任务的实现。假设数据库很多个任务,在抢占发生之前任务的状态都是FREE。现在假设同时有一堆抢占线程开始工作,抢占线...

1143
来自专栏Android机动车

歌词显示控件的实现(上)——歌词解析

最近打算仿网易云音乐的音乐播放器,除了网络框架、接口数据、界面效果等这些因素外,最核心的就是音乐的播放和歌词的显示。

1252
来自专栏编程

C语言在嵌入式系统编程时的注意事项

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程...

3717
来自专栏禁心尽力

实战技能:小小微信支付业务,何必虚惊一场

记得上次接触微信支付是2016年底,那次也是我程序生涯中首次碰及支付业务,慌张谈不上但是懵逼怀疑时时都有。说起第三方登录或者支付,想必都清楚是直接调用人家现成的...

1022
来自专栏安恒网络空间安全讲武堂

浙江省首届网络安全大赛决赛Write Up

直接打开pwd.docx,发现是空的,那么将其作为zip 解压,在其中找到了一张二维码

912
来自专栏北京马哥教育

shell十三问,为linux学习打基础(一)

本文整理并转自CU上的帖子[学习共享] shell 十三問?,此贴是2003年发表的,但却是相当不错的linux基础知识汇集贴,原帖主使用的台湾风格,本文加以简...

3514
来自专栏TungHsu

【干货】什么?Python3.X不能输出中文?原来是编辑器geany的锅?!

小白说我要开始学Python了,既然3.X支持中文,那就学3吧。于是安装好Python环境,下载好geany就开始写了。 先写个“Hello World”吧,作...

3865
来自专栏Python小屋

“Python字符串index()方法应用案例”文末三道思考题答案

本文给出上文文末三个思考题的参考答案,当然,这些答案不是唯一的,也不是最高效的,只是演示字符串方法和内置函数的用法,并且在原题代码上做最少的改动即可实现。

892
来自专栏守望轩

让GridView中CheckBox列支持FireFox

在Asp.net中,可以通过模板列,在Gridview中实现CheckBox列的实现,相关的代码并不复杂,你可以参考这里,我抽取的部分代码如下: <script...

1958
来自专栏lonelydawn的前端猿区

javascript对dom节点拖拽的简单实现(drag特性)

直接看代码 ,一切尽在注释中 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>Dra...

2178

扫码关注云+社区