字符串转换浮点值

时间:2017-04-15 07:17:09

标签: python python-2.7

阅读floating point arithmetic in python,我正在尝试一些例子。为了解释自己为什么print 0.1+0.2没有给0.30000000000000004from the docs on print statement,我读到了:

  

print依次计算每个表达式并写入结果   反对标准输出(见下文)。如果对象不是字符串,   它首先使用string的规则转换为字符串   转换。然后写入(结果或原始)字符串。

为什么字符串转换以及打印语句也将0.30000000000000004舍入到0.3?这不是很难知道我的程序正在使用什么浮点值,或者如何知道它?

示例:

In [17]: 0.1 + 0.2
Out[17]: 0.30000000000000004
In [18]: print 0.1 + 0.2
         0.3
In [20]: str(0.1 + 0.2)
Out[20]: '0.3'

0 个答案:

没有答案