|
发表于 2024-1-5 10:24:47
|
显示全部楼层
Python中的浮点数精度问题是由于二进制浮点数表示法引起的。要解决这个问题,可以使用Decimal模块中的Decimal类型来进行精确计算。
下面是一个使用Decimal进行浮点数运算的示例:
- from decimal import Decimal
- a = Decimal('1.1')
- b = Decimal('0.2')
- result = a + b
- print(result) # 输出:1.3
复制代码
在上面的示例中,我们将1.1和0.2分别作为字符串传递给Decimal构造函数,以避免浮点数精度问题。然后,我们使用加法运算符对两个Decimal对象进行计算,得到一个精确的结果。
另外,如果你只是需要在打印输出时显示更多小数位数,可以使用字符串格式化来控制输出的精度,而不改变实际的计算结果。例如:
- result = 1.1 + 0.2
- print('{:.1f}'.format(result)) # 输出:1.3
复制代码
在上面的示例中,'{:.1f}'表示将结果保留一位小数,并将结果作为浮点数格式化输出。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|