Python 这些浮动结果的原因是什么?
对于下面的代码,为什么第一个结果是小的十进制数,而第二个结果是0?我的主要问题是为什么额外的小数位会使第二个结果变成0。python在计算浮点数时,小数位数是否有限制Python 这些浮动结果的原因是什么?,python,python-3.x,floating-accuracy,Python,Python 3.x,Floating Accuracy,对于下面的代码,为什么第一个结果是小的十进制数,而第二个结果是0?我的主要问题是为什么额外的小数位会使第二个结果变成0。python在计算浮点数时,小数位数是否有限制 x=5.000000000000001 y=5 打印(x-y) x=5.0000000000000001 y=5 打印(x-y) 由于数据的存储方式,浮点并不总是精确的。它们需要四舍五入才能在实践中正常工作 x =5.000000000000001 y =5 print(round(x-y)) x =5.0000000000000
x=5.000000000000001
y=5
打印(x-y)
x=5.0000000000000001
y=5
打印(x-y)
由于数据的存储方式,浮点并不总是精确的。它们需要四舍五入才能在实践中正常工作
x =5.000000000000001
y =5
print(round(x-y))
x =5.0000000000000001
y =5
print(x-y)
将浮点数四舍五入并不是使它们“起作用”的正确方法