我试图保留两位小数。我有这样的数字:
9.96999.to_f.round(2)
大多数情况下,它们会四舍五入到小数点后两位 ( 9.97
),但偶尔我会得到一个如下所示的结果:
9.96999999999
任何想法为什么?
编辑
我正在从一个刮掉的表中添加两个值。查看表格,唯一发生这种情况的情况是,单元格一9.02
的值为 ,单元格二的值为0.95
,或者单元格一9.87
的值为 ,单元格二的值为0.1
。这两次我显然应该得到9.97
。相反,我得到的正是9.969999999999999
. 所有初始值都以字符串开始。