最近发现一个问,环境是Python3.11,
计算30000x1.20时,得到的结果是36000.0,
计算30000x(1.0+0.1+0.1),得到的结果是36000.00000000001,
计算36000x(1.0+0.2),得到的结果是36000.0
想问一下出现这个情况是什么原因,如何在写代码中避免出现这样的陷阱。
最近发现一个问,环境是Python3.11,
计算30000x1.20时,得到的结果是36000.0,
计算30000x(1.0+0.1+0.1),得到的结果是36000.00000000001,
计算36000x(1.0+0.2),得到的结果是36000.0
想问一下出现这个情况是什么原因,如何在写代码中避免出现这样的陷阱。
输出结果时候,加一个round(a,2),a是输出的结果,2是小数点后面保留的位数,可以为0,也可以为1,2,....