Math — математические функции в Python
Что такое модуль?
В C и C++ есть заголовочные файлы, в которых хранятся функции, переменные классов и так далее. При включении заголовочных файлов в код появляется возможность не писать лишние строки и не использовать одинаковые функции по несколько раз. Аналогично в Python для этого есть модули, которые включают функции, классы, переменные и скомпилированный код. Модуль содержит группу связанных функций, классов и переменных.
Функции представления чисел
ceil() и floor() — целая часть числа
Сeil() и floor() — функции общего назначения. Функция ceil округляет число до ближайшего целого в большую сторону. Функция floor убирает цифры десятичных знаков. Обе принимают десятичное число в качестве аргумента и возвращают целое число.
Пример:
Функция fabs() — абсолютное значение
Пример:
factorial() — функция факториала
Эта функция принимает положительное целое число и выводит его факториал.
Пример:
Примечание: при попытке использовать отрицательное число, возвращается ошибка значения ( Value Error ).
Пример:
Функция fmod() — остаток от деления
Пример:
Функция frexp()
Пример:
Функция fsum() — точная сумма float
Вычисляет точную сумму значений с плавающей точкой в итерируемом объекте и сумму списка или диапазона данных.
Пример:
Функции возведения в степень и логарифма
Функция exp()
Пример:
Функция expm1()
Пример:
Функция log() — логарифм числа
Функция log(x[,base]) находит логарифм числа x по основанию e (по умолчанию). base — параметр опциональный. Если нужно вычислить логарифм с определенным основанием, его нужно указать.
Пример:
Функция log1p()
Пример:
Функция log10()
Вычисляет логарифм по основанию 10.
Пример:
Функция pow() — степень числа
Пример:
Функция sqrt() — квадратный корень числа
Эта функция используется для нахождения квадратного корня числа. Она принимает число в качестве аргумента и находит его квадратный корень.
Пример:
Тригонометрические функции
В Python есть следующие тригонометрические функции.
Функция | Значение |
---|---|
sin | принимает радиан и возвращает его синус |
cos | принимает радиан и возвращает его косинус |
tan | принимает радиан и возвращает его тангенс |
asin | принимает один параметр и возвращает арксинус (обратный синус) |
acos | принимает один параметр и возвращает арккосинус (обратный косинус) |
atan | принимает один параметр и возвращает арктангенс (обратный тангенс) |
sinh | принимает один параметр и возвращает гиперболический синус |
cosh | принимает один параметр и возвращает гиперболический косинус |
tanh | принимает один параметр и возвращает гиперболический тангенс |
asinh | принимает один параметр и возвращает обратный гиперболический синус |
acosh | принимает один параметр и возвращает обратный гиперболический косинус |
atanh | принимает один параметр и возвращает обратный гиперболический тангенс |
Пример:
Функция преобразования углов
Эти функции преобразуют угол. В математике углы можно записывать двумя способами: угол и радиан. Есть две функции в Python, которые конвертируют градусы в радиан и обратно.
Пример:
Математические константы
Программирование и научные вычисления на языке Python/§2/Приложение
Чтобы вы знали о встроенных математических возможностях Python отдельным приложением к уроку 2 служит полный перечень функций модулей math и cmath. Если вы что-то забудете из приведенного, вы всегда можете импортировать модуль в интерпретаторе и набрать команды справки help(something), где в качестве something может стоять имя модуля, функции и т. д.
Содержание
math [ править ]
Модуль math всегда доступен и обеспечивает доступ к математическим функциям.
Данные функции неприменимы к комплексным числам, для работы с комплексными числами имеются функции с теми же именами в модуле cmath.
Модуль содержит следующие функции. Во всех случаях, кроме особо оговоренных, функции возвращают число типа float.
Теоретико-численные функции и функции представления [ править ]
Степенные и логарифмические функции [ править ]
Тригонометрические функции [ править ]
Радианы в градусы и наоборот [ править ]
Гиперболические функции [ править ]
Смысл ясен из названий и соответствует стандартным обозначениям англоязычной литературы:
Константы [ править ]
cmath [ править ]
Этот модуль всегда доступен и позволяет проводить операции над комплексными числами. При этом функции модуля поддерживают работу не только с комплексными, но и с целыми числами и числами с плавающей запятой
Причина, по которой имеются два таких схожих модуля, в том, что многим пользователям не нужны комплексные числа или они просто не знают что это такое. В этих случаях будет даже лучше, если при math.sqrt(-1) будет возбуждено исключение, чем будет найдено комплексное решение. При этом отметим, что функции в модуле всегда возвращают комплексное число, даже если исходные числа не содержат мнимой части.
Переход к полярным координатам и обратно [ править ]
Комплексное число z может быть представлено в Декартовой системе координат в представлении, что действительная z.real часть откладывается по оси x, а мнимая z.imag — по оси y. Само число z записывается:
Полярные координаты позволяют представить комплексное число другим образом — в виде радиуса ρ и фазового угла φ. Координата ρ определяет расстояние от точки до полюса, координата φ — угол между полярной осью и отрезком, соединяющим полюс и рассматриваемую точку.
Следующие функции могут быть использованы для перехода от исходных прямоугольных координат к полярным:
Другие функции [ править ]
Модуль содержит также ряд функций, с которыми мы ознакомились в модуле math, имеющими то же применение не только к действительным, но и к комплексным числам:
Степенные и логарифмические функции [ править ]
Тригонометрические функции [ править ]
Гиперболические функции [ править ]
Классифицирующие функции [ править ]
Константы [ править ]
Изучив, данный раздел, мы можем приступить к третьему уроку данного курса, посвященному циклу и последовательностям.
BestProg
Содержание
Поиск на других ресурсах:
1. Особенности применения тригонометрических функций. Преобразование радиан в градусы и наоборот
Чтобы использовать тригонометрические функции в программе, нужно подключить модуль math
Все тригонометрические функции оперируют радианами. Зависимость между радианами и градусами определяется по формуле:
1 радиан = 180°/π = 57.2958°
Если известен угол в градусах, то для корректной работы тригонометрических функций, этот угол нужно преобразовать в радианы.
Например. Задан угол, имеющий n градусов. Найти арккосинус этого угла. В этом случае формула вычисления результата будет следующей:
2. Средства языка Python для конвертирования из градусов в радианы и наоборот. Функции math.degrees(x) и math.radians(x)
В языке Python существуют функции преобразования из градусов в радианы и, наоборот, из радиан в градусы.
Функция math.degrees(x) конвертирует значение параметра x из радиан в градусы.
Функция math.radians(x) конвертирует значение параметра x из градусов в радианы.
Пример.
3. Ограничения на использование тригонометрических функций
При использовании тригонометрических функций следует учитывать соответствующие ограничения, которые следуют из самой сущности этих функций. Например, не существует арксинуса из числа, которое больше 1.
Если при вызове функции задать неправильный аргумент, то интерпретатор выдаст соответствующее сообщение об ошибке
Пример.
Результат работы программы
Пример.
Пример.
Пример.
8. Функция math.cos(x). Косинус угла
Пример.
9. Функция math.sin(x)
Пример.
Модуль Math в Python
P ython библиотека math содержит наиболее применяемые математические функции и константы. Все вычисления происходят на множестве вещественных чисел.
Синтаксис и подключение
Чтобы подключить модуль, необходимо в начале программы прописать следующую инструкцию:
Теперь с помощью точечной нотации можно обращаться к константам и вызывать функции этой библиотеки. Например, так:
Константы модуля Math
math.pi Представление математической константы π = 3.141592…. «Пи» — это отношение длины окружности к её диаметру.
math.tau Число τ — это отношение длины окружности к её радиусу. Т.е
math.inf Положительная бесконечность.
math.nan NaN означает — «не число».
Список функций
Теоретико-числовые функции и функции представления
math.ceil() Функция округляет аргумент до большего целого числа.
Решим задачу : На столе лежат шесть рубинов. Сколько существует способов выбрать два из них?
? Можете подставить числа в формулу, и самостоятельно проверить правильность решения.
math.copysign() Функция принимает два аргумента. Возвращает первый аргумент, но со знаком второго.
print(math.copysign(-6, 2)) > 6.0
math.fabs() Функция возвращает абсолютное значение аргумента:
math.factorial() Вычисление факториала. Входящее значение должно быть целочисленным и неотрицательным.
print(math.fmod(75, 4)) > 3.0
math.frexp(num) Возвращает кортеж из мантиссы и экспоненты аргумента. Формула:
, где M — мантисса, E — экспонента.
print(math.frexp(10)) > (0.625, 4) # проверим print(pow(2, 4) * 0.625) > 10.0
math.fsum() Вычисляет сумму элементов итерируемого объекта. Например, вот так она работает для списка:
summable_list = [1, 2, 3, 4, 5] print(math.fsum(summable_list)) > 15.0
a = 5 b = 15 print(math.gcd(a, b)) > 5
norm = 3 inf = float(‘inf’) print(math.isfinite(norm)) > True print(math.isfinite(inf)) > False
not_inf = 42 inf = math.inf print(math.isinf(not_inf)) > False print(math.isinf(inf)) > True
not_nan = 0 nan = math.nan print(math.isnan(not_nan)) > False print(math.isnan(nan)) > True
math.isqrt() Возвращает целочисленный квадратный корень аргумента, округлённый вниз.
math.ldexp(x, i) Функция возвращает значение по формуле:
возвращаемое значение = x * (2 ** i) print(math.ldexp(3, 2)) > 12.0
math.modf() Результат работы modf() — это кортеж из двух значений:
Задача : Посчитать количество вариантов распределения трёх билетов на концерт Стаса Михайлова для пяти фанатов.
print(math.perm(5, 3)) > 60
Целых 60 способов! Главное — не запутаться в них, и не пропустить концерт любимого исполнителя!
math.prod() Принимает итерируемый объект. Возвращает произведение элементов.
multiple_list = [2, 3, 4] print(math.prod(multiple_list)) > 24
math.remainder(m, n) Возвращает результат по формуле:
Результат = m – x * n,
где x — ближайшее целое к выражению m/n число.
math.trunc() trunc() вернёт вам целую часть переданного в неё аргумента.
Степенные и логарифмические функции
1 аргумент: вернёт значение натурального логарифма (основание e ):
2 аргумента: вернёт значение логарифма по основанию, заданному во втором аргументе:
print(math.log(16, 4)) > 2.0
math.log1p() Это натуральный логарифм от аргумента (1 + x) :
print(math.log(5) == math.log1p(4)) > True
math.pow(a, b) Функция выполняет возведение числа a в степень b и возвращает затем вещественный результат.
math.sqrt() Возврат квадратного корня из аргумента
Тригонометрические функции
math.acos() Функция возвращает арккосинус в радианах:
math.asin() Возврат арксинуса (угол в радианах):
# π/2 print(math.asin(1)) > 1.5707963267948966
# π/4 print(math.atan(1)) > 0.7853981633974483
math.cos() Косинус угла, который следует указывать в радианах:
print(math.hypot(3, 4)) > 5.0
math.sin() Функция вернёт синус угла. Угол следует задавать в радианах:
math.tan() Тангенс угла. Аргумент указываем в радианах.
Угловые преобразования
math.degrees() Функция переводит радианное значение угла в градусы.
math.radians() Наоборот: из градусов — в радианы.
# функция отрабатывает прямо, как по табличке синусов =) print(math.radians(30)) > 0.5235987755982988 print(math.pi / 6) > 0.5235987755982988
Гиперболические функции
Гиперболические функции являются аналогами тригонометрических и тесно с ними связаны. Но тригонометрические функции основаны на окружностях, а гиперболические, соответственно, на гиперболах.
Для Python все они принимают один аргумент — точку, в которой вычисляется значение функции.
Модуль Math — математика в Python на примерах (Полный Обзор)
Библиотека Math в Python обеспечивает доступ к некоторым популярным математическим функциям и константам, которые можно использовать в коде для более сложных математических вычислений. Библиотека является встроенным модулем Python, поэтому никакой дополнительной установки через pip делать не нужно. В данной статье будут даны примеры часто используемых функций и констант библиотеки Math в Python.
Содержание статьи
Специальные константы библиотеки math
В библиотеке Math в Python есть две важные математические константы.
Число Пи из библиотеки math
Первой важной математической константой является число Пи (π). Оно обозначает отношение длины окружности к диаметру, его значение 3,141592653589793. Чтобы получить к нему доступ, сначала импортируем библиотеку math следующим образом:
Затем можно получить доступ к константе, вызывая pi :
Данную константу можно использовать для вычисления площади или длины окружности. Далее представлен пример простого кода, с помощью которого это можно сделать:
Есть вопросы по Python?
На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!
Telegram Чат & Канал
Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!
Паблик VK
Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!
Число Эйлера из библиотеки math
Число Эйлера (е) является основанием натурального логарифма. Оно также является частью библиотеки Math в Python. Получить доступ к числу можно следующим образом:
В следующем примере представлено, как можно использовать вышеуказанную константу:
Экспонента и логарифм библиотеки math
В данном разделе рассмотрим функции библиотеки Math в Python, которые используются для нахождения экспоненты и логарифмов.
Функция экспоненты exp() в Python
Метод может быть использован со следующим синтаксисом:
Параметр x может быть положительным или отрицательным числом. Если x не число, метод возвращает ошибку. Рассмотрим пример использования данного метода:
Мы объявили три переменные и присвоили им значения с различными числовыми типами данных. Мы передали значения методу exp() для вычисления их экспоненты.
Мы также можем применить данный метод для встроенных констант, что продемонстрировано ниже:
При передаче не числового значения методу будет сгенерирована ошибка TypeError, как показано далее:
Функция логарифма log() в Python
Функция log10() в Python
Метод log10() возвращает логарифм по основанию 10 определенного числа. К примеру:
Функция log2() в Python
Функция log2() возвращает логарифм определенного числа по основанию 2. К примеру:
Функция log(x, y) в Python
Функция log1p(x) в Python
Функция log1p(x) рассчитывает логарифм(1+x), как представлено ниже:
Арифметические функции в Python
Арифметические функции используются для представления чисел в различных формах и осуществления над ними математических операций. Далее представлен перечень самых популярных арифметических функций:
В следующем примере показано использование перечисленных выше функций:
К числу других математических функций относятся:
Примеры данных методов представлены ниже:
Возведение в степень
Тригонометрические функции в Python
Модуль math в Python поддерживает все тригонометрические функции. Самые популярные представлены ниже:
Рассмотрим следующий пример:
Обратите внимание, что вначале мы конвертировали значение угла из градусов в радианы для осуществления дальнейших операций.
Конвертация типов числа в Python
Python может конвертировать начальный тип числа в другой указанный тип. Данный процесс называется «преобразованием». Python может внутренне конвертировать число одного типа в другой, когда в выражении присутствуют смешанные значения. Такой случай продемонстрирован в следующем примере:
В вышеприведенном примере целое число 3 было преобразовано в вещественное число 3.0 с плавающей точкой. Результатом сложения также является число с плавающей точкой (или запятой).
Однако иногда вам необходимо явно привести число из одного типа в другой, чтобы удовлетворить требования параметра функции или оператора. Это можно сделать с помощью различных встроенных функций Python.
Вещественное число было преобразовано в целое через удаление дробной части и сохранение базового числа. Обратите внимание, что при конвертации значения в int подобным образом число будет усекаться, а не округляться вверх.
Заключение
Библиотека Math предоставляет функции и константы, которые можно использовать для выполнения арифметических и тригонометрических операций в Python. Библиотека изначально встроена в Python, поэтому дополнительную установку перед использованием делать не требуется. Для получения дополнительной информации можете просмотреть официальную документацию.
Являюсь администратором нескольких порталов по обучению языков программирования Python, Golang и Kotlin. В составе небольшой команды единомышленников, мы занимаемся популяризацией языков программирования на русскоязычную аудиторию. Большая часть статей была адаптирована нами на русский язык и распространяется бесплатно.
E-mail: vasile.buldumac@ati.utm.md
Образование
Universitatea Tehnică a Moldovei (utm.md)