我是大学生。 我正在学习python并创作一些作品。 最近,我发现了以下差异
“>;>;0.57*100”
“56.9999999999”
“>;>;0.58*100”
“57.9999999999”
“>;>;0.56*100”
“56.00000000000001”
“>;>;0.55*100”
“55.00000000000001”
上述代码在python解释器中执行。 我的python版本是3.7.7。 我的python是Cpython
我乘以任何其他两个小数点,比如0.54,0.19,0.99等等
但只有0.58和0.57会变成类似 57.999999... 或56.99999999。。。 当乘以100时
只有0.56*100和0.55*100会变成这样 56.00000000000001或55.00000000000001 当乘以100时
所有大多数的两个小数点数字,如0.19、0.99 变为正确值:19.0,99.0
这些差异只会导致我的电脑?还是每一台电脑? 如果每个python环境都有这些差异,为什么会发生这种情况
这些“错误”发生在python和一些编程语言上。事实上,你不能将浮点与整数相乘,因为会发生这种错误
您可以做的是创建一个var“epsilon”,其值位于小数点之后,您希望在小数点处得到类似于0.001的结果。然后你只需要将结果与这个var进行比较,你只需要保留你想要的数字。(对不起,英语不好,如果你不懂就告诉我。)
相关问题 更多 >
编程相关推荐