面试题答案
一键面试在Python中处理浮点数精度问题,常用decimal
模块。decimal
模块提供了十进制浮点运算支持,能够更精确地表示和运算小数。
示例代码如下:
from decimal import Decimal
# 创建Decimal对象进行运算
result = Decimal('0.1') + Decimal('0.2')
print(result == Decimal('0.3')) # 输出: True
解释:
- 首先导入
decimal
模块中的Decimal
类。 - 使用字符串形式初始化
Decimal
对象,这是因为直接使用浮点数初始化可能仍会存在精度问题。 - 进行加法运算后,比较结果与
Decimal('0.3')
,可以得到预期的结果。