Функции и методы модуля math в python ~ PythonRu
Эта статья посвящена математическим функциям в Python. Для выполнения математических операций необходим модуль math
.
Что такое модуль?
В C и C++ есть заголовочные файлы, в которых хранятся функции, переменные классов и так далее. При включении заголовочных файлов в код появляется возможность не писать лишние строки и не использовать одинаковые функции по несколько раз. Аналогично в Python для этого есть модули, которые включают функции, классы, переменные и скомпилированный код. Модуль содержит группу связанных функций, классов и переменных.
Есть три типа модулей в Python:
- Модули, написанные на Python (
.py
). - Модули, написанные на
C
и загружаемые динамически (.dll
,.pyd
,.so
,.sl
и так далее). - Модули, написанные на
C
, но связанные с интерпретатором.import sys print(sys.builtin_module_names)
('_ast', '_bisect', '_codecs', '_codecs_cn', '_codecs_hk', '_codecs_iso2022', '_codecs_jp', '_codecs_kr', '_codecs_tw', '_collections', '_csv', '_datetime', '_functools', '_heapq', '_imp', '_io', '_json', '_locale', '_lsprof', '_md5', '_multibytecodec', '_opcode', '_operator', '_pickle', '_random', '_sha1', '_sha256', '_sha512', '_sre', '_stat', '_string', '_struct', '_symtable', '_thread', '_tracemalloc', '_warnings', '_weakref', '_winapi', 'array', 'atexit', 'audioop', 'binascii', 'builtins', 'cmath', 'errno', 'faulthandler', 'gc', 'itertools', 'marshal', 'math', 'mmap', 'msvcrt', 'nt', 'parser', 'signal', 'sys', 'time', 'winreg', 'xxsubtype', 'zipimport', 'zlib').
Для получения списка модулей, написанных на C
, но связанных с Python, можно использовать следующий код.
Как видно из списка выше, модуль math
написан на
, но связан с интерпретатором. Он содержит математические функции и переменные, о которых дальше и пойдет речь.
Функции представления чисел
ceil() и floor() — целая часть числа
Сeil()
и floor()
— функции общего назначения. Функция ceil округляет число до ближайшего целого в большую сторону. Функция floor убирает цифры десятичных знаков. Обе принимают десятичное число в качестве аргумента и возвращают целое число.
Пример:
# Импорт модуля math import math # Дробный номер number=8.10 # выводим целую часть числа с округлением к большему print("Верхний предел 8.10 это:",math.ceil(number)) # выводим целую часть числа с округлением к меньшему print("Нижний предел 8.10 это:",math.floor(number))
Вывод:
Верхний предел 8.10 это: 9 Нижний предел 8.10 это: 8
Функция fabs() — абсолютное значение
Функция fabs
используется для вычисления абсолютного значения числа. Если число содержит любой отрицательный знак (-
), то функция убирает его и возвращает положительное дробное число.
Пример:
# Импорт модуля math import math number = -8.10 # вывод абсолютного значения числа print(math.fabs(number))
Вывод:
8.1
factorial() — функция факториала
Эта функция принимает положительное целое число и выводит его факториал.
Пример:
# Импорт модуля math import math number = 5 # вывод факториала числа print("факториала числа", math.factorial(number))
Вывод:
факториала числа 120
Примечание: при попытке использовать отрицательное число, возвращается ошибка значения (Value Error
).
Пример:
# Импорт модуля math import math number = -5 # вывод факториала числа print("факториала числа", math.factorial(number))
Вывод:
ValueError: factorial() not defined for negative values
Функция fmod() — остаток от деления
Функция fmod(x,y)
возвращает x % y
. Разница в том, что выражение x % y
работает только с целыми числами, а эту функцию можно использовать и для чисел с плавающей точкой.
Пример:
# Импорт модуля math import math print(math.fmod(5,2)) print(math.fmod(-5,2)) print(math.fmod(-5.2,2)) print(math.fmod(5.2,2))
Вывод:
1.0 -1.0 -1.2000000000000002 1.2000000000000002
Функция frexp()
Эта функция возвращает мантиссу и показатель степени в виде пары (m,n
) любого числа x
, решая следующее уравнение.
Пример:
# Импорт модуля math import math print(math.x. Пример:
# Импорт модуля math import math print("e в степени 5 ", math.exp(5)) print("e в степени 2.5", math.exp(2.5))Вывод:
e в степени 5 148.4131591025766 e в степени 2.5 12.182493960703473Функция expm1()
Эта функция работает так же, как и
exp
, но возвращаетexp(x)-1
. Здесь,expm1
значитexm-m-1
, то есть,exp-minus-1
.Пример:
# Импорт модуля math import math print(math.exp(5)-1) print(math.expm1(5))Вывод:
147.4131591025766 147.4131591025766Функция log() — логарифм числа
Функция
log(x[,base])
находит логарифм числаx
по основаниюe
(по умолчанию).base
— параметр опциональный. Если нужно вычислить логарифм с определенным основанием, его нужно указать.Пример:
# Импорт модуля math import math # логарифм с основанием e print(math. log(2)) # логарифм с указанным основанием (2) print(math.log(64,2))Вывод:
0.6931471805599453 6.0Функция log1p()
Эта функция похожа на функцию логарифма, но добавляет
к
1 x
.log1p
значитlog-1-p
, то есть,log-1-plus
.Пример:
# Импорт модуля math import math print(math.log1p(2))Вывод:
1.0986122886681098Функция log10()
Вычисляет логарифм по основанию 10.
Пример:
# Импорт модуля math import math print(math.log10(1000))Вывод:
3.0Функция pow() — степень числа
Используется для нахождение степени числа. Синтаксис функции
pow(Base, Power)
. Она принимает два аргумента: основание и степень.Пример:
# Импорт модуля math import math print(math.pow(5,4))Вывод:
625.0Функция sqrt() — квадратный корень числа
Эта функция используется для нахождения квадратного корня числа. Она принимает число в качестве аргумента и находит его квадратный корень.
Пример:
# Импорт модуля math import math print(math.sqrt(256))Вывод:
16.0Тригонометрические функции
В Python есть следующие тригонометрические функции.
Функция | Значение |
---|---|
sin | принимает радиан и возвращает его синус |
cos | принимает радиан и возвращает его косинус |
tan | принимает радиан и возвращает его тангенс |
asin | принимает один параметр и возвращает арксинус (обратный синус) |
acos | принимает один параметр и возвращает арккосинус (обратный косинус) |
atan | принимает один параметр и возвращает арктангенс (обратный тангенс) |
sinh | принимает один параметр и возвращает гиперболический синус |
cosh | принимает один параметр и возвращает гиперболический косинус |
tanh | принимает один параметр и возвращает гиперболический тангенс |
asinh | принимает один параметр и возвращает обратный гиперболический синус |
acosh | принимает один параметр и возвращает обратный гиперболический косинус |
atanh | принимает один параметр и возвращает обратный гиперболический тангенс |
Пример:
# Импорт модуля math import math # функция синусы print("синус PI/2 :", math. sin(math.pi/2)) # функция косинуса print("косинус 0 :", math.cos(0)) # функция тангенса print("тангенс PI/4 :", math.tan(math.pi/4)) print() # функция арксинуса print("арксинус 0 :", math.acos(0)) # функция арккосинуса print("арккосинус 1 :", math.acos(1)) # функция арктангенса print("арктангенс 0.5 :", math.atan(0.5)) print() # функция гиперболического синуса print("гиперболический синус 1 :", math.sinh(1)) # функция гиперболического косинуса print("гиперболический косинус 0 :", math.cos(0)) # функция гиперболического тангенса print("гиперболический тангенс 1 :", math.tan(1)) print() # функция обратного гиперболического синуса print("обратный гиперболический синус 1 :", math.acosh(1)) # функция обратного гиперболического косинуса print("обратный гиперболический косинус 1 :", math.acosh(1)) # функция обратного гиперболического тангенса print("обратный гиперболический тангенс 0.5 :", math.atanh(0.5))
Вывод:
синус PI/2 : 1. 0 косинус 0 : 1.0 тангенс PI/4 : 0.9999999999999999 арксинус 0 : 1.5707963267948966 арккосинус 1 : 0.0 арктангенс 0.5 : 0.4636476090008061 гиперболический синус 1 : 1.1752011936438014 гиперболический косинус 0 : 1.0 гиперболический тангенс 1 : 1.5574077246549023 обратный гиперболический синус 1 : 0.0 обратный гиперболический косинус 1 : 0.0 обратный гиперболический тангенс 0.5 : 0.5493061443340549
Функция преобразования углов
Эти функции преобразуют угол. В математике углы можно записывать двумя способами: угол и радиан. Есть две функции в Python, которые конвертируют градусы в радиан и обратно.
degrees()
: конвертирует радиан в градусы;radians()
: конвертирует градус в радианы;
Пример:
# Импорт модуля math import math print(math.degrees(1.57)) print(math.radians(90))
Вывод:
89.95437383553924 1.5707963267948966
Математические константы
В Python есть две математические константы: pi
и e
.
pi
: это математическая константа со значением3.1416..
e
: это математическая константа со значением2.7183..
Пример:
# Импорт модуля math import math # вывод значения PI print("значение PI", math.pi) # вывод значения e print("значение e", math.e)
Вывод:
значение PI 3.141592653589793 значение e 2.718281828459045
Математические функции и модуль math в Python
Разберемся с простейшими арифметическими операциям над числами, далее рассмотрим стандартные математические функции Python и в конце статьи ознакомимся с математическим модулем Math, который сильно расширяет возможности работы с числами.
Числа и операции над ними в Python
Рассмотрим 7 основных математических операторов:
- Сложение.
- Вычитание.
- Умножение.
- Деление.
- Целочисленное деление.
- Остаток от деления.
- Возведение в степень.
Сложение (+)
Складываем два и более чисел:
print(2 + 2) #4
Сложение помощью переменных:
a = 2 b = 2 c = a + b print(c) #4
Вычитание (-)
Вычитаем одно число из другого:
print(4 - 2) #2
Вычитание с помощью переменных:
a = 4 b = 2 c = a - b print(c) #2
Умножение (*)
Умножаем два и более чисел:
print(4 * 2) #8
Умножение с помощью переменных:
a = 4 b = 2 c = a * b print(c) #8
Деление (/)
Деление чисел происходит с помощью знака /
:
print(4 / 2) #2. 0
Деление с помощью переменных:
a = 4 b = 2 c = a / b print(c) #2.0
При делении всегда возвращается тип данных float
:
print(type(4 / 2)) #<class 'float'>
На 0 делить нельзя, получим ошибку:
print(4 / 0) #ZeroDivisionError: division by zero
Целочисленное деление (//)
При целочисленном делении Python отбрасывает остаток (дробную часть) и оставляет только целую часть:
print(13 // 2) #6
print(13 / 2) #6.5
print(20 // 7) #2
print(20 / 7) #2.857142857142857
Тоже самое с помощью переменных:
a = 15 b = 2 c = a // b print(c) #7
Остаток от деления (%)
Остаток от деления — это оставшаяся после целочисленного деления часть числа. Так же это называют делением по модулю.
Например, число 5 входит в число 14 два раза и остается остаток 4.
print(14 % 5) #4
Этой операцией очень часто пользуются, к примеру, для определения четности числа:
my_list = [1, 2, 3, 4, 5, 6] for value in my_list: if value % 2 == 0: print(value) #2 #4 #6
Мы берем каждое число из списка и если остаток от деления на 2 равен 0, значит это четное число.
Возведение в степень (**)
Этот оператор возводит одно число в степень другого.
2 в 10 степени будет:
print(2 ** 10) #1024
С помощью переменных это выглядит так:
a = 2 n = 10 print(a ** n) #1024
Приоритет математических операций
- Возведение в степень.
- Умножение, деление, целочисленное деление и остаток от деления.
- Сложение и вычитание.
Встроенные функции Python для работы с числами
У Python широкий набор функции со своими уникальными возможностями, рассмотрим функции, которые используются наиболее часто.
Минимум и максимум: min() max()
Функция min()
возвращают минимум из полученных аргументов.
Функция max()
возвращают максимум из полученных аргументов.
print(min(1, 2, 3)) print(max(1, 2, 3)) #1 #3
Абсолютное значение: abs()
Функция abs()
возвращает абсолютное значение полученного аргумента:
print(abs(10)) print(abs(-10)) #10 #10
Округление десятичного числа: round()
Функция round()
округляет число до N знаков после запятой:
round(a, n)
a
— округляемое число. n
— количество знаков, до которого нужно округлить (если не указать, то будет округлено до целого числа).
print(round(10.893842)) print(round(10.893842, 2)) #11 #10.89
Возведение в степень: pow()
Функция pow()
возводит число в степень, она делает тоже самое, что и оператор **
.
В функцию нужно передать два аргумента — число, которое нужно возвести в степень и второе — сама степень.
print(pow(2, 10)) #1024
Модуль math в Python
Если для ваших нужд окажется мало встроенных функций, то на помощь придет библиотека math. С этой библиотекой можно выполнить практически любую математическую операцию.
Разберем самые основные.
Для того, чтобы работать с модулем Math, его необходимо подключить, для этого прописываем команду:
import math
Теперь можно вызывать функции этого модуля.
Округление до большего целого числа: math.ceil()
print(math.ceil(10.034)) #11
Округление до меньшего целого числа: math.floor()
print(math.floor(10.034)) #10
Абсолютное значение или модуль числа: math.fabs()
print(math.fabs(-10.034)) #10.034
Факториал числа: math.factorial()
print(math.factorial(10)) #3628800
Остаток от деления: math.fmod(x, y)
Возвращает остаток от деления числа x на y:
print(math.fmod(14, 5)) #4. 0
Сумма элементов последовательности: math.fsum()
print(math.fsum([1, 2, 3])) #6.0
Возврат дробной и целой части числа: math.modf()
В результате получим кортеж, из целой и дробной части числа:
print(math.modf(10.14)) #(0.14000000000000057, 10.0)
Целая часть числа: math.trunc()
print(math.trunc(10.14)) #10
Логарифм: math.log(x, [base])
Функция вычисляет логарифм x
по основанию base
. Если необязятельный аргумент base
не указан, вычисляется натуральный логарифм:
print(math. log(5)) #1.6094379124341003
В какую степень нужно возвести 4, чтобы в итоге получить 16:
print(math.log(16, 4)) #2.0
Квадратный корень: math.sqrt()
print(math.sqrt(4)) #2.0
Тригонометрические функции
math.sin(X)
— синус X.math.cos(X)
— косинус X.math.tan(X)
— тангенс X.math.acos(X)
— арккосинус.math.asin(X)
— арксинус X.math.atan(X)
— арктангенс X.
Эти функции принимают в качестве аргумента значение в радианах.
math.degrees(X)
— конвертирует радианы в градусы. math.radians(X)
— конвертирует градусы в радианы.
Константы
Математическая константа π: math.pi
print(math.pi) #3.141592653589793
Математическая константа e: math.e
print(math.e) #2.718281828459045
Математический модуль Python
❮ Предыдущий Далее ❯
Математический модуль Python
Python имеет встроенный модуль, который можно использовать для математических задач.
Модуль math
имеет набор методов и констант.
Математические методы
Метод | Описание |
---|---|
math.acos() | Возвращает арккосинус числа |
math.acosh() | Возвращает аркгиперболический косинус числа |
math. asin() | Возвращает арксинус числа |
math.asinh() | Возвращает аркгиперболический синус числа |
мат.атан() | Возвращает арктангенс числа в радианах |
math.atan2() | Возвращает арктангенс y/x в радианах |
math.atanh() | Возвращает аркгиперболический тангенс числа |
math.ceil() | Округляет число до ближайшего целого числа |
math.comb() | Возвращает количество способов выбрать k элементов из n элементов без повторения и порядка |
math.copysign() | Возвращает число с плавающей запятой, состоящее из значения первого параметра и знака второго параметра |
math.cos() | Возвращает косинус числа |
math.cosh() | Возвращает гиперболический косинус числа |
математические степени() | Преобразует угол из радианов в градусы |
мат. расст() | Возвращает евклидово расстояние между двумя точками (p и q), где p и q координаты этой точки |
math.erf() | Возвращает функцию ошибки числа |
math.erfc() | Возвращает дополнительную функцию ошибки числа |
мат.выражение() | Возвращает E, возведенное в степень x | .
мат.выр1() | Возвращает E x - 1 |
math.fabs() | Возвращает абсолютное значение числа |
мат.факториал() | Возвращает факториал числа |
мат.пол() | Округляет число в меньшую сторону до ближайшего целого числа |
math.fmod() | Возвращает остаток x/y |
math.frexp() | Возвращает мантиссу и показатель степени указанного числа |
math.fsum() | Возвращает сумму всех элементов в любой итерации (кортежи, массивы, списки и т. д.) |
мат.гамма() | Возвращает гамма-функцию при x |
math.gcd() | Возвращает наибольший общий делитель двух целых чисел |
math.hypot() | Возвращает евклидову норму |
math.isclose() | Проверяет, близки ли два значения друг к другу или нет |
math.isfinite() | Проверяет, является ли число конечным или нет |
math.isinf() | Проверяет, является ли число бесконечным или нет |
мат.иснан () | Проверяет, является ли значение NaN (не числом) или нет |
math.isqrt() | Округляет квадратный корень в меньшую сторону до ближайшего целого числа |
math.ldexp() | Возвращает обратную функцию math.frexp(). что равно x * (2**i) заданных чисел x и i |
мат.лгамма() | Возвращает значение логарифмической гаммы x |
math. log() | Возвращает натуральный логарифм числа или логарифм числа по основанию | .
math.log10() | Возвращает логарифм x | по основанию 10.
math.log1p() | Возвращает натуральный логарифм 1+x |
math.log2() | Возвращает логарифм по основанию 2 x |
мат.перм.() | Возвращает количество способов выбрать k элементов из n элементов в порядке и без повторения |
math.pow() | Возвращает значение x в степени y |
math.prod() | Возвращает произведение всех элементов в итерируемом |
мат. радианы() | Преобразует значение градуса в радианы |
math.remainder() | Возвращает ближайшее значение, при котором числитель полностью делится на знаменатель |
math.sin() | Возвращает синус числа |
math. sinh() | Возвращает гиперболический синус числа |
math.sqrt() | Возвращает квадратный корень числа |
мат.загар() | Возвращает тангенс числа |
мат.танх() | Возвращает гиперболический тангенс числа |
math.trunc() | Возвращает усеченные целые части числа |
Математические константы
Константа | Описание |
---|---|
математика | Возвращает число Эйлера (2,7182...) |
мат.инф | Возвращает положительную бесконечность с плавающей запятой |
мат.нан | Возвращает значение NaN (не число) с плавающей запятой |
мат.пи | Возвращает PI (3.1415...) |
мат.тау | Возвращает тау (6,2831...) |
❮ Предыдущий Следующий ❯
ВЫБОР ЦВЕТА
Лучшие учебники
Учебник HTMLУчебник CSS
Учебник JavaScript
Учебник How To
Учебник SQL
Учебник по Python
Учебник по W3. CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
Лучшие ссылки
Справочник по HTMLСправочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery
Top96 ExamplesПримеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
FORUM | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.
Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.
Python Math
❮ Назад Далее ❯
Python имеет набор встроенных математических функций, в том числе расширенный математический модуль, позволяющий выполнять математические задачи над числами.
Встроенные математические функции
Функции min()
и max()
можно использовать для поиска наименьшего или наибольшего значения в итерируемом объекте:
Пример
x = min(5, 10, 25)
y = max(5, 10, 25)
print(x)
print(y)
Попробуйте сами »
Функция abs()
возвращает абсолютное значение (положительное) значение указанного числа:
Пример
x = abs(-7. 25)
print(x)
Попробуйте сами
).
Пример
Вернуть значение 4 в степени 3 (то же, что 4 * 4 * 4):
x = pow(4, 3)
print(x)
Попробуйте сами »
Математический модуль
Python также имеет встроенный модуль math
, который расширяет список математических функций.
Чтобы использовать его, вы должны импортировать модуль math
:
import math
После импорта модуля math
вы
можно начать использовать методы и константы модуля.
Например, метод math.sqrt()
возвращает квадратный корень числа:
Пример
Импортировать math
x = math.sqrt(64)
print(x)
Попробуйте сами »
Метод math.ceil()
округляет число в большую сторону до
его ближайшее целое число и math. floor()
метод округляет число в меньшую сторону до ближайшего целого числа и возвращает результат:
Пример
Импортировать математика
x = math.ceil(1.4)
y = math.floor(1.4)
print(x) #
возвращает 2
print(y) # возвращает 1
Попробуйте сами »
Константа math.pi
, возвращает значение
PI (3.14...):
Пример
Импортировать math
x = math.pi
print(x)
Попробуйте сами »
Полный справочник математических модулей
В нашем справочнике по математическим модулям вы найдете найти полный справочник всех методов и констант, принадлежащих модулю Math.
❮ Предыдущий Следующий ❯
ВЫБОР ЦВЕТА
Лучшие учебники
Учебник по HTMLУчебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3.