все Python 3Числа и математикафункция
decimal.getcontext()
decimal
Возвращает текущий контекст Decimal для этого потока. Его поля prec (точность) и rounding можно менять прямо на месте — они влияют на все операции.
Синтаксис
decimal.getcontext()
decimal.getcontext().prec = 50
prec — это общее число значащих цифр результата, а не знаков после запятой, и на сам конструктор контекст не действует: Decimal('1.23456789') сохранит все цифры, округление случится только при арифметике. Контекст потоко-локальный, так что в новом потоке снова увидите умолчания; а когда точность нужна лишь на пару операций, чище блок with decimal.localcontext(), чем правка полей глобального контекста, которую потом легко забыть откатить.
Примеры
import decimal
ctx = decimal.getcontext()
ctx.prec # → 28 (по умолчанию)
ctx.prec = 5
decimal.Decimal(1) / decimal.Decimal(7) # → Decimal('0.14286')
decimal.getcontext().rounding = decimal.ROUND_HALF_UP
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности