все Python 3Числа и математикафункция
math.ldexp
представление
Обратная frexp: x·2^i (собирает число из мантиссы и экспоненты).
Синтаксис
math.ldexp(...)
Умножение на степень двойки — точная операция: сдвигается только экспонента, значащие биты не меняются, поэтому ldexp надёжнее, чем x * 2 ** i, где при большом i промежуточное 2 ** i раздувается в гигантское целое. Если результат не влезает в диапазон float, будет OverflowError, а при слишком маленьком — постепенная потеря точности через субнормальные числа и в пределе 0.0.
Примеры
import math
print(math.ldexp(0.5, 3)) # → 4.0
print(math.ldexp(1, 10)) # → 1024.0
print(math.ldexp(3, -2)) # → 0.75
m, e = math.frexp(10); print(math.ldexp(m, e)) # → 10.0
print(math.ldexp(1, 5000)) # → OverflowError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности