【问题描述】
在 Python 中,不能正确输出两个浮点数的乘积。例如:
>>> 4.5*7.9
35.550000000000004
【原因分析】
原因在于在Python中,一些有限十进制小数是使用无限的二进制小数表示的,导致计算误差。
【解决方法】
要精确地计算两个浮点数乘积,可采用如下代码。
from decimal import Decimal
t=Decimal('4.5')*Decimal('7.9')
print(t)
【问题描述】
在 Python 中,不能正确输出两个浮点数的乘积。例如:
>>> 4.5*7.9
35.550000000000004
【原因分析】
原因在于在Python中,一些有限十进制小数是使用无限的二进制小数表示的,导致计算误差。
【解决方法】
要精确地计算两个浮点数乘积,可采用如下代码。
from decimal import Decimal
t=Decimal('4.5')*Decimal('7.9')
print(t)