Python Glossary English

все Python 3Числа и математикафункция

math.frexp

представление

Раскладывает число на мантиссу m и экспоненту e: x = m·2^e, 0.5 ≤ |m| < 1.

Синтаксис

math.frexp(...)

Разложение двоичное, а не десятичное: frexp(8) даёт (0.5, 4), потому что 8 = 0.5·2^4, а не (8.0, 0), как подсказывает привычка к научной записи по основанию 10. Операция точная, без округления, и math.ldexp(*math.frexp(x)) вернёт исходное число бит в бит. Мантисса — float, экспонента — int; для нуля результат (0.0, 0).

Примеры

import math
print(math.frexp(8))   # → (0.5, 4)
print(math.frexp(0.5))   # → (0.5, 0)
print(math.frexp(-12))   # → (-0.75, 4)
print(math.frexp(0))   # → (0.0, 0)
m, e = math.frexp(10); print(m * 2 ** e)   # → 10.0

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности