看帖神器
虎扑
追帖动态
头条新闻
每日新帖
最新热帖
新闻存档
热帖存档
文学峸
虎扑论坛
未名空间
北美华人网
北美微论坛
看帖神器
登录
← 下载
《看帖神器》官方
iOS App
,体验轻松追帖。
为什么在Python3.7.4里,0.3+0.6的显示结果是0.8999999999而不是0.9
查看虎扑今日新帖
最新回复:2020年4月10日 4点7分 PT
共 (25) 楼
返回列表
订阅追帖
只看未读
更多选项
阅读全帖
只看图片
只看视频
查看原帖
嗑
嗑嗨伦纳德
5 年多
楼主 (虎扑)
嗑
嗑嗨伦纳德
5 年多
2 楼
顶顶
4
4lastdance
5 年多
3 楼
同问
小
小伙子要尊重老大爷
5 年多
4 楼
好像加个round就是0.9了
带
带篮孑
5 年多
5 楼
浮点数的工作原理
建议搜一下
还有0.1+0.2=0.300000...004都是类似的原理
j
joexi
5 年多
6 楼
浮点数精度问题 decimal可解决
虎
虎扑用户144847
5 年多
7 楼
引用 @
嗑嗨伦纳德
发表的
:
顶顶
你把它format成两位小数就行了
o
oyxh
5 年多
8 楼
浮点数的精度
断
断剑
5 年多
9 楼
跟浮点数的存储有关。所以对比度点数的时候,一般要加个极小的差值范围
虎
虎扑用户075744
5 年多
10 楼
好像是因为二进制里面有一些数是无限小数,所有编程语言计算0.1+0.2都不等于0.3,因为无限小数只能取有限位所以有误差,具体我也不懂
祥
祥林豹
5 年多
11 楼
format搞一下
没
没有昵啊啊啊啊
5 年多
12 楼
浮点计算 [ 此帖被没有昵啊啊啊啊在2020-04-10 17:28修改 ]
佛
佛系观赛
5 年多
13 楼
部分浮点数只能近似表达,再想了解的细一点你不如百度去了
篮
篮球诗人库兹马
5 年多
14 楼
因为计算机不精确。。。
3
30k_10k10k
5 年多
15 楼
合理
可
可我只想好好学习
5 年多
16 楼
因为计算机计算浮点数会损失精度只能精确计算2的多少多少次方这样的数0.3 0.6都不能用2的多少次方来精确表示,可以了解一点计算机组成原理的知识。
虎
虎扑用户486841
5 年多
17 楼
有的些数字计算机的浮点数是表示不出来的,只能近似表达。计算机里浮点数表示方法就是从下面这个数列中选取一部分加起来近似表示:1/2 1/4 1/8 1/16…… 0.1 + 0.2 != 0.3 但是 0.5 + 0.25 == 0.75 你学过编码就知道了 [ 此帖被山东号航母编队在2020-04-10 17:34修改 ]
嗑
嗑嗨伦纳德
5 年多
18 楼
学到了,感谢楼上老铁们
虎
虎扑用户472365
5 年多
19 楼
计算机是2进制,小数用2的负N次方表示,所以0.5, 0.25, 0.125,.... 在计算机才是精确的,其它的数是不能用2的负N次表示,也就无法精确表示(只能无限接近)。
搜一下二进制小数表示法。
鸿
鸿蒙即天
5 年多
20 楼
建议以后遇到这种问题直接百度即可,基本你遇到的99.9%的问题都有人遇到并且解决过🐶
l
ldld9383
5 年多
21 楼
浮点数精度。。。。
p
phuinews
5 年多
22 楼
《深入理解计算机系统》讲浮点数讲得很好,看看就知道为什么了
w
wangjeffree
5 年多
23 楼
大一学C语言打基础很好,老师基本都会讲这个问题。
虎
虎扑用户465560
5 年多
24 楼
在街上我甚至还能学编程
虎
虎扑用户704518
5 年多
25 楼
round off error
请输入帖子链接
收藏帖子
建议搜一下
还有0.1+0.2=0.300000...004都是类似的原理
你把它format成两位小数就行了
搜一下二进制小数表示法。