Что такое import math
Математическая библиотека math в Python
Математическая библиотека в Python предоставляет нам доступ к некоторым общим математическим функциям и константам, которые мы можем использовать в нашем коде для более сложных математических вычислений.
Библиотека является встроенным модулем Python, поэтому вам не нужно выполнять установку, чтобы использовать ее. В этой статье мы покажем пример использования наиболее часто используемых функций и констант математической библиотеки Python.
Специальные константы
Математическая библиотека в Python содержит две важные константы.
Первая – это Pie (π), очень популярная математическая константа. Он обозначает отношение длины окружности к диаметру круга и имеет значение 3,141592653589793. Чтобы получить к нему доступ, мы сначала импортируем математическую библиотеку следующим образом:
Затем мы можем получить доступ к этой константе с помощью pi:
Вы можете использовать эту константу для вычисления площади или длины окружности. Следующий пример демонстрирует это:
Число Эйлера
Число Эйлера (e), являющееся основанием натурального логарифма, также определено в библиотеке Math. Мы можем получить к нему доступ следующим образом:
В следующем примере показано, как использовать указанную выше константу:
Показатели и логарифмы
В этом разделе мы рассмотрим функции библиотеки Math, используемые для поиска различных типов показателей и логарифмов.
Функция exp()
Метод можно использовать со следующим синтаксисом:
Параметр x может быть положительным или отрицательным числом. Если x не является числом, метод вернет ошибку. Продемонстрируем использование этого метода на примере:
Мы объявили три переменные и присвоили им значения с разными числовыми типами данных. Затем мы передали их методу exp() для вычисления их показателей.
Мы также можем применить этот метод к встроенным константам, как показано ниже:
Если вы передадите методу нечисловое значение, он выдаст ошибку, как показано здесь:
Ошибка TypeError была сгенерирована, как показано в приведенных выше выходных данных.
Функция log()
Эта функция возвращает логарифм указанного числа. Натуральный логарифм вычисляется по основанию e. Следующий пример демонстрирует использование этой функции:
В приведенном выше скрипте мы передали методу числовые значения с разными типами данных. Мы также вычислили натуральный логарифм константы пи. Результат выглядит так:
Функция log10()
Этот метод возвращает десятичный логарифм указанного числа. Например:
Функция log2()
Эта функция вычисляет логарифм числа по основанию 2. Например:
Функция log (x, y)
Эта функция возвращает логарифм x, где y является основанием. Например:
Функция log1p (x)
Эта функция вычисляет логарифм (1 + x), как показано здесь:
Арифметические функции
Следующий пример демонстрирует использование вышеуказанных функций:
Эти методы можно использовать, как показано ниже:
Тригонометрические функции
Рассмотрим следующий пример:
Обратите внимание, что мы сначала преобразовали значение угла из градусов в радианы перед выполнением других операций.
Преобразование типов
Вы можете преобразовать число из одного типа в другой. Этот процесс известен, как «принуждение». Python может внутренне преобразовывать число из одного типа в другой, если выражение имеет значения смешанных типов. Следующий пример демонстрирует это:
В приведенном выше примере целое число 3 было приведено к значению 3,0 (число с плавающей запятой) для операции сложения, и результатом также является число с плавающей запятой.
Однако иногда вам необходимо явно привести число от одного типа к другому, чтобы удовлетворить требованиям параметра функции или оператора. Это можно сделать с помощью различных встроенных функций Python. Например, чтобы преобразовать целое число в число с плавающей запятой, мы должны вызвать функцию float(), как показано ниже:
Целое число преобразовано в число с плавающей запятой. Число с плавающей запятой можно преобразовать в целое число следующим образом:
Число с плавающей запятой было преобразовано в целое путем удаления дробной части и сохранения основного числа. Обратите внимание, что когда вы конвертируете значение в int таким образом, оно будет усечено, а не округлено.
Заключение
Математическая библиотека в Python предоставляет нам функции и константы, которые мы можем использовать для выполнения арифметических и тригонометрических операций.
Библиотека устанавливается на Python, поэтому вам не требуется выполнять дополнительную установку, чтобы использовать ее. Для получения дополнительной информации вы можете найти здесь официальную документацию.
Математический модуль math в Python – список функций
Математический модуль math в Python представлен наиболее известными математическими функциями, которые включают в себя тригонометрические функции, функции представления, логарифмические функции и т. д. Кроме того, он также определяет две математические константы, т. е. pie и число Эйлера.
Pie(n): это хорошо известная математическая константа, определяемая как отношение длины окружности к диаметру круга. Его значение составляет 3,141592653589793.
Число Эйлера(е): определяется как основание натурального логарифма, и его значение составляет 2,718281828459045.
Ниже приведены различные математические модули:
math.log()
Этот метод возвращает натуральный логарифм заданного числа. Он рассчитывается по базе e.
math.log10()
Этот метод возвращает базовый логарифм 10 заданного числа и называется стандартным логарифмом.
math.exp()
Этот метод возвращает число с плавающей запятой после увеличения e до заданного числа.
math.pow(x,y)
Этот метод возвращает степень x, соответствующую значению y. Если значение x отрицательно или y не является целым числом, возникает ошибка ValueError.
math.floor(x)
Этот метод возвращает минимальное значение x. Он возвращает значение x, меньшее или равное.
math.ceil(x)
Метод возвращает значение ceil x. Возвращает значение, большее или равное x.
math.fabs(x)
Метод возвращает абсолютное значение x.
math.factorial()
Возвращает факториал заданного числа x. Если x не является целым, возникает ошибка ValueError.
math.modf(x)
Возвращает дробную и целую части x. Он имеет знак x – float.
Python предоставляет несколько математических модулей, которые могут выполнять сложную задачу в одной строке кода.
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, которые конвертируют градусы в радиан и обратно.
Пример:
Математические константы
Модуль 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 предоставляет доступ к математическим функциям и константам. Несмотря на то что числа комплексного типа (complex) являются встроенными, данный модуль их не поддерживает и всегда вызывает исключение при их использовании. Для того что бы использовать математические функции с комплексными числами обратитесь к модулю cmath.
Теория чисел
Данная функция всегда возвращает число типа int и поддерживает длинную арифметику, т.е. величина обрабатываемого числа x и возвращаемого результата ограничивается только мощностью вашего компьютера.
Если x не является целым числом (int) или если x является отрицательным, то будет вызвано исключение ValueError.
Если оба числа отличны от нуля, то будет возвращено число, которое всегда делит оба эти числа:
В случае если числа a и b являются взаимно простыми, то будет возвращена \(1\):
Если одно из чисел равно нулю, то будет возвращено, другое, отличное от \(0\) число:
Если оба числа равны \(0\), то функция вернет \(0\):
Указанные числа должны быть целыми (тип int), но могут быть как положительными, так и отрицательными:
Доступно в Python с версии 3.5.
Чаще всего данная функция используется тогда, когда представление чисел типа float не должно зависеть от архитектуры используемой машины.
Данная функция в отличии от встроенной функции abs() не обрабатывает комплексные числа:
Может показаться, что эта сумма будет точной всегда, но на самом деле это не так:
Многое зависит от используемой платформы, точнее от сборки компилятора языка C, который используется на данной платформе. Если вам нужны точные арифметические операции с десятичными дробями, то воспользуйтесь модулем decimal.
Если используемой платформой поддерживаются нули со знаком, то знак второго аргумента так же будет копироваться:
Допустим у нас есть два числа и мы знаем, что по сути это одно и то же число, а все мизерные различия связаны с ошибками округления и двоичной арифметикой. Мы то понимаем что это как бы одно и то же число, а вот компьютер считает иначе:
Для таких ситуаций, в которых мы готовы считаться с некоторой погрешностью и подходит функция isclose() :
Параметр abs_tol (absolute tolerances) – это минимальный абсолютный допуск, который определяет как сравнивать значения близкие к нулю. Данный параметр должен быть не меньше нуля:
Округление чисел
Степени, логарифмирование, экспоненцирование
В ситуациях pow(x, 0.0) или pow(0.0, x) данная функция всегда возвращает \(1\) даже если x равен NaN, Inf или -Inf. Однако, если x и y являются конечными числами, причем x отрицательное, а y не целое, то будет вызвано исключение ValueError:
По сути, команда log(x, base) равносильна команде log(x)/log(base) :
Тригонометрические функции
Преобразование меры углов
Гиперболические функции
Константы и специальные значения
Доступно в Python начиная с версии 3.5.
Доступно в Python начиная с версии 3.5.
Специальные функции
Доступно в Python начиная с версии 3.2.
Доступно в Python начиная с версии 3.2.
Данная функция обобщает понятие факториала, на действительные числа (и на комплексные, но в данном случае используются только действительные числа). Если \(x = 0\) то это вызовет исключение ValueError.