Модуль Math в Python
Python библиотека math содержит наиболее применяемые математические функции и константы. Все вычисления происходят на множестве вещественных чисел.
Если вам нужен соответствующий аппарат для комплексного исчисления, модуль math не подойдёт. Используйте вместо него cmath . Там вы найдёте комплексные версии большинства популярных math -функций.
Синтаксис и подключение
Чтобы подключить модуль, необходимо в начале программы прописать следующую инструкцию:
Теперь с помощью точечной нотации можно обращаться к константам и вызывать функции этой библиотеки. Например, так:
Константы модуля Math
math.pi Представление математической константы π = 3.141592…. «Пи» — это отношение длины окружности к её диаметру.
math.e Число Эйлера или просто e . Иррациональное число, которое приблизительно равно 2,71828.
math.tau Число τ — это отношение длины окружности к её радиусу. Т.е
import math > print(math.tau) print(math.tau == 2 * math.pi) > True
math.inf Положительная бесконечность.
Для оперирования отрицательной бесконечно большой величиной, используйте -math.inf
Константа math.inf эквивалента выражению float(«inf») .
math.nan NaN означает — «не число».
Аналогичная запись: float(«nan») .
Список функций
Теоретико-числовые функции и функции представления
math.ceil() Функция округляет аргумент до большего целого числа.
math.comb(n, k) Число сочетаний из n по k . Показывает сколькими способами можно выбрать k объектов из набора, где находится n объектов. Формула:
Решим задачу : На столе лежат шесть рубинов. Сколько существует способов выбрать два из них?
💭 Можете подставить числа в формулу, и самостоятельно проверить правильность решения.
math.copysign() Функция принимает два аргумента. Возвращает первый аргумент, но со знаком второго.
math.fabs() Функция возвращает абсолютное значение аргумента:
math.factorial() Вычисление факториала. Входящее значение должно быть целочисленным и неотрицательным.
math.floor() Антагонист функции ceil() . Округляет число до ближайшего целого, но в меньшую сторону.
math.fmod(a, b) Считает остаток от деления a на b . Является аналогом оператора » % » с точностью до типа возвращаемого значения.
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
math.gcd(a, b) Возвращает наибольший общий делитель a и b . НОД — это самое большое число, на которое a и b делятся без остатка.
a = 5 b = 15 print(math.gcd(a, b)) > 5
math.isclose(x, y) Функция возвращает True , если значения чисел x и y близки друг к другу, и False в ином случае. Помимо пары чисел принимает ещё два необязательных именованных аргумента:
- rel_tol — максимально допустимая разница между числами в процентах;
- abs_tol — минимально допустимая разница.
math.isfinite() Проверяет, является ли аргумент NaN , False или же бесконечностью. True , если не является, False — в противном случае.
norm = 3 inf = float(‘inf’) print(math.isfinite(norm)) > True print(math.isfinite(inf)) > False
math.isinf() True , если аргумент — положительная/отрицательная бесконечность. False — в любом другом случае.
not_inf = 42 inf = math.inf print(math.isinf(not_inf)) > False print(math.isinf(inf)) > True
math.isnan() Возврат True , если аргумент — не число ( nan ). Иначе — False .
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() — это кортеж из двух значений:
math.perm(n, k) Возвращает число размещений из n по k . Формула:
Задача : Посчитать количество вариантов распределения трёх билетов на концерт Стаса Михайлова для пяти фанатов.
Целых 60 способов! Главное — не запутаться в них, и не пропустить концерт любимого исполнителя!
math.prod() Принимает итерируемый объект. Возвращает произведение элементов.
multiple_list = [2, 3, 4] print(math.prod(multiple_list)) > 24
math.remainder(m, n) Возвращает результат по формуле:
где x — ближайшее целое к выражению m/n число.
print(math.remainder(55, 6)) > 1.0 print(math.remainder(4, 6)) > -2.0
math.trunc() trunc() вернёт вам целую часть переданного в неё аргумента.
Степенные и логарифмические функции
math.exp(x) Возвращает e в степени x . Более точный аналог pow(math.e, x) .
print(math.exp(3)) > 20.085536923187668
math.expm1(x) Вычисляет значение выражения exp(x) — 1 и возвращает результат.
print(math.expm1(3)) > 19.085536923187668 print(math.expm1(3) == (math.exp(3) — 1)) > True
math.log() Функция работает, как с одним, так и с двумя параметрами .
1 аргумент: вернёт значение натурального логарифма (основание e ):
2 аргумента: вернёт значение логарифма по основанию, заданному во втором аргументе:
☝️ Помните, это читается, как простой вопрос: «в какую степень нужно возвести число 4 , чтобы получить 16 «. Ответ, очевидно, 2 . Функция log() с нами согласна.
math.log1p() Это натуральный логарифм от аргумента (1 + x) :
print(math.log(5) == math.log1p(4)) > True
math.log2() Логарифм по основанию 2 . Работает точнее, чем math.log(x, 2) .
math.log10() Логарифм по основанию 10 . Работает точнее, чем math.log(x, 10) .
math.pow(a, b) Функция выполняет возведение числа a в степень b и возвращает затем вещественный результат.
Модуль math
Модуль math – один из наиважнейших в Python. Этот модуль предоставляет обширный функционал для работы с числами.
math.ceil(X) – округление до ближайшего большего числа.
math.copysign(X, Y) — возвращает число, имеющее модуль такой же, как и у числа X, а знак — как у числа Y.
math.factorial(X) — факториал числа X.
math.floor(X) — округление вниз.
math.fmod(X, Y) — остаток от деления X на Y.
math.frexp(X) — возвращает мантиссу и экспоненту числа.
math.ldexp(X, I) — X * 2 i . Функция, обратная функции math.frexp().
math.fsum(последовательность) — сумма всех членов последовательности. Эквивалент встроенной функции sum(), но math.fsum() более точна для чисел с плавающей точкой.
math.isfinite(X) — является ли X числом.
math.isinf(X) — является ли X бесконечностью.
math.isnan(X) — является ли X NaN (Not a Number — не число).
math.modf(X) — возвращает дробную и целую часть числа X. Оба числа имеют тот же знак, что и X.
math.trunc(X) — усекает значение X до целого.
math.expm1(X) — e X — 1. При X → 0 точнее, чем math.exp(X)-1.
math.log(X, [base]) — логарифм X по основанию base. Если base не указан, вычисляется натуральный логарифм.
math.log1p(X) — натуральный логарифм (1 + X). При X → 0 точнее, чем math.log(1+X).
math.log10(X) — логарифм X по основанию 10.
math.log2(X) — логарифм X по основанию 2.
math.sqrt(X) — квадратный корень из X.
math.acos(X) — арккосинус X. В радианах.
math.asin(X) — арксинус X. В радианах.
math.atan(X) — арктангенс X. В радианах.
math.atan2(Y, X) — арктангенс Y/X. В радианах. С учетом четверти, в которой находится точка (X, Y).
math.cos(X) — косинус X (X указывается в радианах).
math.sin(X) — синус X (X указывается в радианах).
math.tan(X) — тангенс X (X указывается в радианах).
math.hypot(X, Y) — вычисляет гипотенузу треугольника с катетами X и Y (math.sqrt(x * x + y * y)).
math.degrees(X) — конвертирует радианы в градусы.
math.radians(X) — конвертирует градусы в радианы.
math.cosh(X) — вычисляет гиперболический косинус.
math.sinh(X) — вычисляет гиперболический синус.
math.tanh(X) — вычисляет гиперболический тангенс.
math.acosh(X) — вычисляет обратный гиперболический косинус.
math.asinh(X) — вычисляет обратный гиперболический синус.
math.atanh(X) — вычисляет обратный гиперболический тангенс.
math.erf(X) — функция ошибок.
math.erfc(X) — дополнительная функция ошибок (1 — math.erf(X)).
math.gamma(X) — гамма-функция X.
math.lgamma(X) — натуральный логарифм гамма-функции X.
math.pi — pi = 3,1415926.
Для вставки кода на Python в комментарий заключайте его в теги
- Книги о Python
- GUI (графический интерфейс пользователя)
- Курсы Python
- Модули
- Новости мира Python
- NumPy
- Обработка данных
- Основы программирования
- Примеры программ
- Типы данных в Python
- Видео
- Python для Web
- Работа для Python-программистов
Ноггано — Питон
Тима с малым пёрли домой тёмными дворами.
Тёрли о морях и о Майами;
Тёрли о девятке и о новой Яве.
На улице стояло лето с комарами.
Говорили, а потом молчали.
Потом, опять говорили, о том, о чём вначале.
О том, что неплохо было бы отсюда отчалить.
— Это грустно или весело?
— Это? Это печально.
Вдруг, из-за угла выпала компания,
Лица которой парни не наблюдали ранее.
— Есть шо покурить?
— А имеешь позвонить?
— Откуда сами будете?
— Чё, ваще не курите?
— Ты мне не груби!
— Длинный не дёргайся!
— Чё такие борзые?
— Кто за вас на подписи?
Пока шел терц, малый рванул на полной скорости.
За ним, побежали человек шесть.
Тимофей остался стоять с остальными.
— Всё, что у тебя есть — мы за так отымем.
Бакланы сыпали словечками блатными.
Но Тимофей стоял и думал, а ты ли?
Из-за гаражей показалася погоня.
Малого не догнали, или там оставили малого.
И вдруг Opel врезался в бетон.
— Чё ждешь, длинного еб*ш, Питон!
Тима понял сразу, кто тут длинный, а кто — Питон.
Удар в лицо кулаком, всё побелело молоком.
Назваться Питоном, что ж, надо быть за муд*ком.
Тиму топтали, кто-то дёрнул телефон.
Кто-то дернул портмоне, документы и бабки.
Оторвали от Armani тапки.
Отметелили люто, как на Севере метели метелят ели.
Х*ли? 15 тел топчатся на одном теле.
Когда Тима пришел в себя — уже светало.
Рядом сидел малый, и с района ребята.
Х*ле тут сказать, когда харя, как футбольный мячик?
Отнесли Тиму домой, сегодня не до качек!
Тима ест суп через трубочку, ссыт кровью.
Ходит с палочкой на прогулочку.
Смотрит зорко на район зорко со своего балкона.
— Где найти Питона.
Мусолят план дома, как в Генеральном Штабе.
Пинают о возмездии и о его масштабе!
Подтянулись Саня-каратист и его братик.
Этих братьев с головй хватит, чтобы убрать их!
Собралась толпа, человек 40.
80 суровых кроссовок.
В одном из дворов заседала двора,
И Тимоха, немедля, двинулся на таран.
Через щели на опухшем лице смотрит, как в прицел.
Тимыны пацики держат эту компашку в кольце.
— Здаров, Питон! Брякнул громко Тимофей,
Но никто не отозвался на этот странный никнейм.
Тогда было темно, и Тима не запомнил фейс Питона.
Помнил, что ростом Питон был не ниже Либрона.
— Эй, длинный!
— Я?
— Да, ты!
— Ну?
— Знаешь Питона?
— Питона? Нет у нас такого.
— Ладно, а чё ты делал ночью, 22-го?
— 22-го? Да. Я спал дома.
— Отвечаешь?
— Отвечаю, стопудово!
— Ты был дома?
— Да, я был дома!
Длинный начинает напирать на Тимона.
— Чё такое? Чё за предъявы за какого-то Питона?
Я таких не знаю. Мы за таких «не в теме».
И вдруг, во двор заезжает Лада 9.
Пары врезались в темень,
Под звук какой-то кислотной по*бени
Открываются двери и выпадают «олени» —
А у «оленей» — подогнуты колени;
И поплыли к толпе, спрятав зракчки под стёкла.
Тима смотрит, у Либрона *бло намокло плотно.
Странно, ведь на улице совсем не душно.
И один из «оленей» спрашивает Либрона:
— Здаров, Питон! А чё у тебя тут за заварушка?
— Питон! А чё у тебя тут за заварушка?
— Слышь, братка!
— Питон! Чё у тебя тут за заварушка?
— Эй, алё моё!
— Питон! Чё у тебя тут за заварушка?
— Эй, бро!
— Питон! Всё понятно, по***дим потом.
— Слышь, бро!
— Питон! А чё у тебя тут за заварушка?
— Слышь, братка!
— Питон! Чё у тебя тут за заварушка?
— Эй, алё моё!
— Питон! Чё у тебя тут за заварушка?
— Эй, бро!
— Питон! Всё понятно, по***дим потом.
— Так, я не понял. Чё там по итогу с Питоном?
Про питона с матом
Коллекция смешных демотиваторов для настроения