在PYTHON(3.4.3)中: 为什么x下面的代码是3.5 ...而y是100.不应该是0。
weight = 356
weight2 = 3.56
x = weight%weight2
y = weight/weight2
print(x)
print(y)
但是在这段代码中,x按预期运行= 0:
weight = 35600
weight2 = 356
x = weight%weight2
y = weight/weight2
print(x)
print(y)
如果您有任何解释,请回答并提供解决方法,如果您有! :)
答案 0 :(得分:0)
这是因为浮点运算不精确。 decimal
模块显示了真实的'您认为的价值是3.56:
In[202] decimal.Decimal(3.56)
Out[202]: Decimal('3.560000000000000053290705182007513940334320068359375')
因此出现了很多舍入问题。