Модуль math в Python: полное руководство с примерами
Модуль math в Python предоставляет функции для выполнения математических операций. Он включает в себя множество встроенных математических функций, которые помогают в решении различных задач. В этой статье мы рассмотрим основные возможности модуля math, приведем примеры его использования и объясним, как оптимизировать код с помощью этих функций.
Содержание:
- math.sqrt(x)
- math.sin(x), math.cos(x), math.tan(x)
- math.pi и math.e
- math.pow(x,y)
- math.factroial(x)
- math.ceil(x) и math.floor(x)
- math.log(x, base)
- math.degrees(x) и math.radians(x)
- math.isclose
- math.gcd(a,b)
- math.sinh(x), math.cosh(x), math.tanh(x)
- math.erf(x) и math.erfc(x)
- math.isqrt(n)
- math.perm(n, k) и math.comb(n, k)
- math.frexp(x) и math.ldexp(x, i)
Основные функции модуля math
1. math.sqrt(x)
Функция sqrt(x) возвращает квадратный корень числа x.
Пример:
import math
num = 25
sqrt_num = math.sqrt(num)
print(f"Квадратный корень числа {num} равен {sqrt_num}")
2. math.sin(x), math.cos(x), math.tan(x)
Функции sin(x), cos(x), tan(x) возвращают синус, косинус и тангенс угла x (в радианах).
Пример:
import math
angle = math.radians(30) # Преобразование угла в радианы
sin_val = math.sin(angle)
cos_val = math.cos(angle)
tan_val = math.tan(angle)
print(f"Синус: {sin_val}, Косинус: {cos_val}, Тангенс: {tan_val}")
3. math.pi и math.e
Константы math.pi и math.e представляют значения числа π и экспоненты e соответственно.
Пример:
import math
print(f"Значение π: {math.pi}, значение e: {math.e}")
4. math.pow(x, y)
Функция pow(x, y) возвращает значение числа x в степени y.
Пример:
import math
base = 2
exponent = 3
result = math.pow(base, exponent)
print(f"{base} в степени {exponent} равно {result}")
5. math.factorial(x)
Функция factorial(x) возвращает факториал числа x.
Пример:
import math
num = 5
fact = math.factorial(num)
print(f"Факториал числа {num} равен {fact}")
6. math.ceil(x) и math.floor(x)
Функции ceil(x) и floor(x) возвращают наименьшее целое число, большее или равное x, и наибольшее целое число, меньшее или равное x, соответственно.
Пример:
import math
num = 4.7
ceil_num = math.ceil(num)
floor_num = math.floor(num)
print(f"ceil({num}) = {ceil_num}, floor({num}) = {floor_num}")
7. math.log(x, base)
Функция log(x, base) возвращает натуральный логарифм числа x (по основанию e) или логарифм числа x по указанному основанию base.
Пример:
import math
num = 10
natural_log = math.log(num)
log_base_2 = math.log(num, 2)
print(f"Натуральный логарифм {num}: {natural_log}, логарифм {num} по основанию 2: {log_base_2}")
8. math.degrees(x) и math.radians(x)
Функции degrees(x) и radians(x) преобразуют значение угла из радиан в градусы и наоборот.
Пример:
import math
angle_rad = math.pi / 4
angle_deg = math.degrees(angle_rad)
print(f"{angle_rad} радиан = {angle_deg} градусов")
9. math.isclose(a, b, rel_tol=1e-09, abs_tol=0.0)
Функция isclose(a, b, rel_tol, abs_tol) проверяет, являются ли два числа a и b «близкими» с учетом заданных относительной (rel_tol) и абсолютной (abs_tol) погрешностей.
Пример:
import math
x = 0.1 + 0.2
y = 0.3
print(f"x = {x}, y = {y}, близки ли x и y? {math.isclose(x, y)}")
10. math.gcd(a, b)
Функция gcd(a, b) возвращает наибольший общий делитель чисел a и b.
Пример:
import math
num1 = 24
num2 = 36
gcd_result = math.gcd(num1, num2)
print(f"Наибольший общий делитель {num1} и {num2}: {gcd_result}")
11. math.sinh(x), math.cosh(x), math.tanh(x)
Функции sinh(x), cosh(x), tanh(x) возвращают гиперболический синус, косинус и тангенс числа x.
Пример:
import math
num = 1
sinh_val = math.sinh(num)
cosh_val = math.cosh(num)
tanh_val = math.tanh(num)
print(f"Гиперболический синус: {sinh_val}, Гиперболический косинус: {cosh_val}, Гиперболический тангенс: {tanh_val}")
12. math.erf(x) и math.erfc(x)
Функции erf(x) и erfc(x) возвращают значение функций ошибок (error function) и дополнительной функции ошибок (complementary error function).
Пример:
import math
x = 1
erf_val = math.erf(x)
erfc_val = math.erfc(x)
print(f"Значение функции ошибок для x={x}: {erf_val}, значение дополнительной функции ошибок: {erfc_val}")
13. math.isqrt(n)
Функция isqrt(n) возвращает целую часть квадратного корня из числа n.
Пример:
import math
num = 25
sqrt_result = math.isqrt(num)
print(f"Целая часть квадратного корня из {num}: {sqrt_result}")
14. math.perm(n, k) и math.comb(n, k)
Функции perm(n, k) и comb(n, k) вычисляют количество перестановок из n элементов по k, а также число сочетаний из n элементов по k.
Пример:
import math
n = 5
k = 3
perm_result = math.perm(n, k)
comb_result = math.comb(n, k)
print(f"Число перестановок P({n}, {k}): {perm_result}, Число сочетаний C({n}, {k}): {comb_result}")
15. math.frexp(x) и math.ldexp(x, i)
Функции frexp(x) разбивает число x на мантиссу и экспоненту, а ldexp(x, i) возвращает значение мантиссы, умноженной на 2 в степени i.
Пример:
import math
num = 16.0
mantissa, exponent = math.frexp(num)
result = math.ldexp(mantissa, exponent)
print(f"Число {num} разбито на мантиссу {mantissa} и экспоненту {exponent}, результат ldexp: {result}")
Заключение
Модуль math в Python предоставляет широкий спектр математических функций для выполнения различных операций с числами. Дополнительные возможности этого модуля делают его полезным инструментом для решения разнообразных задач, связанных с математикой и вычислениями.
Используйте эти дополнительные функции модуля math, чтобы решать сложные математические задачи, проводить анализ данных, а также работать с числами и выражениями в вашем коде.
Надеюсь, что эти дополнения будут полезными и интересными для вас, и помогут вам расширить возможности работы с числами и математикой в Python!

