[问题] 小数加法出现奇怪尾巴?

楼主: harold1018 ( )   2022-05-31 11:50:55
https://imgur.com/a/1unAUlR
抱歉新手发问
为何会有后面那一串00000002
真心不懂 也不知道该用什么关键字查
感谢~
作者: sating00 (sating00)   2022-05-31 11:56:00
关键字:浮点数
楼主: harold1018 ( )   2022-05-31 11:59:00
谢谢 我的理解是电脑的限制 不可能修正过来了对吗
作者: r123432   2022-05-31 12:20:00
你想问的是decimal?
作者: f416720001 (Gemini翔)   2022-05-31 12:37:00
https://reurl.cc/n1l2q1简单说,大多数十进制的小数,很难精确地用二进制去表示,导致误差
楼主: harold1018 ( )   2022-05-31 13:10:00
https://imgur.com/a/d4yDcPb 请问如果用round函数去把后面循环小数杀掉 在运算上会有问题吗
作者: lycantrope (阿宽)   2022-05-31 13:34:00
要看目的是什么,浮点数跟整数不一样
作者: ides13 (juso)   2022-05-31 15:53:00
试试round(1.5)及round(2.5),就会发现有差。
作者: germun (ger)   2022-05-31 17:22:00
一般来说不用管它 需要输出显示的时候才会去动它还有就是float做equal判断的时候不要直接用等号: ==
楼主: harold1018 ( )   2022-05-31 21:45:00
对对对 这就是我想问的 if equal 判断该怎么办呢?
作者: ides13 (juso)   2022-05-31 22:09:00
作者: sleepylizard   2022-06-01 20:38:00
有人对这个问题写过套件,比 Decimal 快上不少https://github.com/sigma-py/accupy

Links booklink

Contact Us: admin [ a t ] ucptt.com