# decimal精确小数
# Decimal
decimal模块是Python内置的一个用于高精度浮点计算的模块,其提供了一种精度更高的浮点数类型Decimal,可以用于处理需要更高精度的浮点数计算。与常规的浮点数类型float相比,Decimal类型能够保证运算的精度和准确性。
使用decimal模块进行计算时,可以通过getcontext()函数获取上下文环境,从而设置精度、舍入模式等参数。Decimal类型的对象支持基本的算术运算和一些高级运算,如指数运算、对数运算、三角函数等。
decimal模块还提供了一些函数,如sum()、mean()、quantize()等,用于对Decimal类型进行求和、求平均值、取整等操作。此外,decimal模块还支持将Decimal类型转换为float类型、字符串类型等。
但是需要我们注意的是,decimal模块的运行速度必然是没有内置类型float快的,并且在实践中,很少有需要计算到小数点17位之后的情况(float支持到17位精度)。
import decimal
a = decimal.Decimal('0.1')
b = decimal.Decimal('0.2')
c = a + b
print(c)
decimal.getcontext().prec = 4
a = decimal.Decimal('1')
b = decimal.Decimal('3')
c = a / b
print(c)
← Enum枚举类 namedtuple →