Модуль math
Математические функции и константы
Модуль math
предоставляет базовые математические функции для работы с числами с плавающей запятой.
Функции
acos
Функция acos(x)
Возвращает арккосинус x
. Значение функции находится в пределах от 0 до π. Аргумент x
должен находиться в диапазоне от -1 до 1.
import math
result = math.acos(0.5)
print(result) # 1.047198
asin
Функция asin(x)
возвращает арксинус x
. Значение функции находится в пределах от -π/2 до π/2. Аргумент x
должен находиться в диапазоне от -1 до 1.
import math
result = math.asin(0.5)
print(result) # 0.5235988
atan
Функция atan(x)
возвращает арктангенс x
. Результат находится в пределах от -π/2 до π/2.
import math
result = math.atan(1.0)
print(result) # 0.7853982
atan2
Функция atan2(y, x)
возвращает арктангенс y/x
в радианах. Это функция двух переменных, результатом которой является угол θ между положительной осью x и точкой (x, y). Угол находится в диапазоне (-π, π].
import math
result = math.atan2(1.0, 1.0)
print(result) # 0.7853982
ceil
Функция ceil(x)
возвращает наименьшее целое число, большее или равное x
.
import math
print(math.ceil(4.2)) # 5
print(math.ceil(-4.2)) # -4
copysign
Функция copysign(x, y)
возвращает число x
со знаком y
.
import math
print(math.copysign(3, -1)) # -3.0
print(math.copysign(-3, 1)) # 3.0
cos
Функция cos(x)
возвращает косинус x
, где x
задается в радианах.
import math
print(math.cos(math.pi)) # -1.0
print(math.cos(math.pi/2)) # -4.371139e-08
degrees
Функция degrees(x)
преобразует x
из радиан в градусы.
import math
print(math.degrees(math.pi)) # 180.0
print(math.degrees(math.pi/2)) # 90.0
exp
Функция exp(x)
возвращает e в степени x
.
import math
print(math.exp(1)) # 2.718282
print(math.exp(0)) # 1.0
fabs
Функция fabs(x)
возвращает абсолютное значение x
.
import math
print(math.fabs(-5)) # 5.0
print(math.fabs(5)) # 5.0
floor
Функция floor(x)
возвращает наибольшее целое число, меньшее или равное x
.
import math
print(math.floor(4.2)) # 4
print(math.floor(-4.2)) # -5
fmod
Функция fmod(x, y)
возвращает остаток от деления x/y
. Результат знака x
.
import math
print(math.fmod(20, 3)) # 2.0
print(math.fmod(-20, 3)) # -2.0
frexp
Функция frexp(x)
разделяет число с плавающей запятой на мантиссу и экспоненту. Возвращает кортеж (m, e)
, такой что x == m * 2**e
. Если x == 0
, возвращает (0.0, 0)
. В противном случае: 0.5 <= abs(m) < 1
.
import math
print(math.frexp(8)) # (0.5, 4)
print(math.frexp(0)) # (0.0, 0)
isfinite
Функция isfinite(x)
возвращает True
, если x
является конечным числом (не бесконечностью и не NaN).
import math
print(math.isfinite(1)) # True
print(math.isfinite(float('inf'))) # False
isinf
Функция isinf(x)
возвращает True
, если x
является бесконечным числом.
import math
print(math.isinf(float('inf'))) # True
print(math.isinf(1.0)) # False
isnan
Функция isnan(x)
возвращает True
, если x
не является числом (NaN).
import math
print(math.isnan(float('nan'))) # True
print(math.isnan(1.0)) # False
ldexp
Функция ldexp(x, exp)
возвращает x * (2**exp)
. Это обратная операция для frexp()
.
import math
print(math.ldexp(0.5, 4)) # 8.0
log
Функция log(x, [base])
возвращает логарифм числа x
по основанию base
. Если base
не указано, возвращает натуральный логарифм x
.
import math
print(math.log(10)) # Натуральный логарифм, результат: 2.302585
print(math.log(100, 10)) # Десятичный логарифм, результат: 2.0
modf
Функция modf(x)
возвращает кортеж из двух чисел с плавающей запятой: дробной и целой части x
. Оба возвращаемых значения имеют тот же знак, что и x
.
import math
print(math.modf(3.14)) # Результат: (0.1400001, 3.0)
pow
Функция pow(x, y)
возвращает x
в степени y
. Аналогично выражению x ** y
.
import math
print(math.pow(2, 3)) # 8.0
radians
Функция radians(x)
преобразует угол x
из градусов в радианы.
import math
print(math.radians(180)) # Результат:3.141593
sin
Функция sin(x)
возвращает синус угла x
, измеренного в радианах.
import math
print(math.sin(math.pi / 2)) # 1.0
sqrt
Функция sqrt(x)
возвращает квадратный корень x
.
import math
print(math.sqrt(16)) # 4.0
tan
Функция tan(x)
возвращает тангенс угла x
, измеренного в радианах.
import math
print(math.tan(math.pi / 4)) # 1.0
trunc
Функция trunc(x)
возвращает целое число, отбросив дробную часть x
(округление к 0).
import math
print(math.trunc(3.14)) # 3
factorial
Функция factorial(x)
вычисляет факториал числа x
, если x
является неотрицательным целым числом. Возвращает целочисленный результат.
import math
print(math.factorial(5)) # 120
isclose
Функция isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
определяет, близки ли два числа a
и b
относительно заданных относительного (rel_tol
) и абсолютного (abs_tol
) допусков.
- Аргументы:
a
,b
: числа, которые сравниваются.rel_tol
: относительная допустимая ошибка (по умолчанию1e-09
).abs_tol
: абсолютная допустимая ошибка (по умолчанию0.0
).
- Возвращает:
True
, если числа близки по указанным допускам, иначеFalse
.
import math
print(math.isclose(0.1 + 0.2, 0.3)) # True
Константы
e
Основание натурального логарифма, приблизительное значение: 2.718281828459045.
import math
print(math.e) # 2.718282
pi
Отношение длины окружности к ее диаметру, приблизительное значение: 3.141592653589793.
import math
print(math.pi) # 3.141593
nan
Представляет “Not a Number” (NaN), что используется для обозначения неопределенных или невыполнимых числовых операций, таких как 0/0.
import math
not_a_number = math.nan
is_nan = math.isnan(not_a_number)
print(is_nan) # True
tau
Представляет собой математическую константу (\tau), равную (2\pi) (примерно 6.283185307179586). Часто используется в расчетах, где удобнее работать с совершенными кругами.
import math
radius = 3
circumference = 2 * math.tau * radius # Расчет длины окружности
print(circumference) # 37.69911