Python的int()转换问题

时间:2015-08-15 15:16:50

标签: python type-conversion python-2.x

当我运行此代码时:

value = 11.20
dollars = int(value)
print dollars
print 100 * (value - dollars)

不出所料,我分别获得了1120.0

然而,当添加这一行时:

print int(100 * (value - dollars))

我得到19

我在网上搜索,并得到了解释:

  

但是0.20是不同的。在计算机内部,它实际上是一个稍小的数字,所以乘以100得到19.99999 ....当int切断小数点后的部分时,结果是19,而不是预期的20。

然后我尝试了:

value_tmp = 0.20
print int(value_tmp * 100)

我得到了20,而不是19,这里有什么问题?

0 个答案:

没有答案