Что означает import math
Импортирование модулей в Python
В Пайтоне имеется большое количество заранее написанных кодов, которые также известны как модули и пакеты. Модуль – это один файл, импортируемый Пайтоном, в то время как пакет состоит из двух и более модулей. Пакеты импортируются таким же образом, как и модули. Каждый сохраненный вами скрипт в Пайтоне является модулем. Это, конечно, может быть далеко не самым полезным модулем, но тем не менее. В данном разделе мы рассмотрим, как импортировать модули при помощи нескольких различных методов.
Импортируем модуль «this»
В Пайтоне есть ключевые слова для импорта модулей. Попробуйте вот этот:
Запустив данный код в своем интерпретаторе, вы увидите что-то в таком духе:
Поздравляем, вы нашли «пасхальное яйцо» в Пайтоне, также известное как «Дзен». Это одна из лучших неофициальных частей работы в Пайтон. Сам по себе модуль this не делает ничего особенного, только показывает оригинальный способ импорта чего-либо. Теперь давайте импортируем что-нибудь, чем мы сможем воспользоваться в будущем, к примеру, модуль math:
В примере выше мы импортировали модуль math и сделали что-то новое. Мы вызвали одну из функций модуля – sqrt (т.е. square root – квадратный корень). Для вызова метода импортированного модуля, нам нужно использовать следующий синтаксис: module_name.method_name(аргумент). В данном примере мы нашли квадратный корень от 4. В модуле math есть много других функций, которыми мы можем воспользоваться, такие как нахождение косинуса, факториал, логарифмы и другие. Вы можете призывать эти функции таким же образом, как и с функцией sqrt. Единственное, в чем вам нужно удостовериться – принимают ли они большее количество аргументов или нет. Теперь посмотрим на другой способ импорта.
Использование from в импорте
Некоторые люди не очень любят обозначать все, что они пишут названиями модулей. Впрочем, в Пайтоне есть решение и для этого. Вы можете импортировать из модуля только те функции, которые вам нужны. Представим, что нам нужно импортировать только функцию sqrt:
Это работает именно так, как читается: функция sqrt импортируется из модуля math. Попробую объяснить это иначе. Мы использовали ключевое слово from для импорта функции sqrt из модуля math. Мы также можем использовать этот метод для импорта нескольких функций из модуля math:
В данном примере мы импортировали как sqrt так и pi. Перед тем как обратиться к pi, стоит обратить внимание на то, что это не функция, которую вы вызываете, а величина.
Заказать дешевых подписчиков в группу ВК с качественными страницами можно на сервисе https://doctorsmm.com/. Вам также будет предложен широкий выбор формата ресурса и скорости его поступления. Обратите внимание, что практически на каждую услугу действуют внушительные оптовые скидки и гарантии. Не упустите свое выгодное предложение!
Когда вы выполняете импорт, вы действительно можете сделать это с величинами, функциями, даже с другим модулем. Есть еще один способ импорта, на который стоит обратить внимание. Давайте импортируем вообще всё!
Есть вопросы по Python?
На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!
Telegram Чат & Канал
Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!
Паблик VK
Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!
Импорт всего
В Пайтоне предусмотрена возможность импорта всех функций, переменных и модулей за раз. Это может быть плохой идеей, так как такой импорт может засорить ваше пространство имен. Пространство имен – это место, в котором находятся все ваши переменные, пока работает программа. К примеру, у вас есть своя переменная под названием sqrt:
Только что вы сделали функцию sqrt переменной, значение которой 5. Это называется затенением (shadowing). Это особенно хитрый способ упрощения своей жизни, когда вы выполняете импорт всего из модуля. Давайте взглянем:
По этой причине, в большинстве случаев рекомендуется использовать один из указанных в данном разделе способов для импорта. Но есть и несколько исключений из этого правила. В некоторых модулях импорт предусмотрен заранее, это возможно благодаря методу “*”. Одним из ярких примеров является Tkinter – набор инструментов, работающий с Пайтоном, который позволяет пользователю создавать пользовательские интерфейсы на рабочем столе. Причина, по которой определенно удобно импортировать через Tkinter заключается в том, что модули все имеют имена, так что вероятность повторного использования стремится к нулю.
Подведем итоги
Теперь вы знаете все об импорте в Пайтоне. Существуют десятки модулей, которые включены в Пайтон и которые вы можете применять для поднятия функционала своих программ. Вы можете использовать встроенные модули для запросов ОС, получить информацию из реестра Windows, настроить утилиты ведения журнала, выполнять анализ XML и многое, многое другое.
Являюсь администратором нескольких порталов по обучению языков программирования Python, Golang и Kotlin. В составе небольшой команды единомышленников, мы занимаемся популяризацией языков программирования на русскоязычную аудиторию. Большая часть статей была адаптирована нами на русский язык и распространяется бесплатно.
E-mail: vasile.buldumac@ati.utm.md
Образование
Universitatea Tehnică a Moldovei (utm.md)
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 в Python. Математические функции в Python
Определение модуля. 3 типа модулей в Python
Для начала разберемся в том, что такое модуль в Python. Под этим словом подразумеваются специальные файлы, в которых содержатся переменные классов, функции и другие компоненты работы программы, которые могут использоваться в самых разных приложениях. Они, точно так же, как и функции, лишают необходимости изобретать велосипед или писать огромное количество одних и тех же строк в разных программах.
В это же время функции объявляются в программе, а модуль может использоваться в самых разных приложениях. Достаточно объявить их один раз, и далее ее можно использовать в нескольких программах, написанных разными людьми. Более того, они могут друг друга не знать, а просто установить модуль для языка программирования и использовать их на разных уголках света.
Все модули в Python разделяются на три вида:
Для того, чтобы получить список последних, необходимо написать следующие строки кода.
import sys
print(sys.builtin_module_names)
Функции представления чисел
Эти функции выполняют такие действия, как отображение целой части числа, получение факториала, абсолютного значения, остатка от деления и так далее. Рассмотрим функции представления чисел.
ceil() и floor() — целая часть числа
С помощью этих функций можно или округлить число до целого или убрать десятичные знаки, оставив часть до запятой неизменной. Обе функции используют в качестве аргумента десятичное число и возвращают целое. Но различается принцип их работы.
С помощью функции ceil() число округляется в большую сторону. А функция floor() по сути также выполняет округление, но в меньшую сторону.
Приведем примеры кода для наглядности.
# С помощью этой строки мы импортируем библиотеку
import math
# Задаем переменную с числом, имеющим дробное значение
number=8.10
# Используем функцию ceil() для округления в большую сторону. В выводе будет 9.
print(math.ceil(number))
# Используем функцию floor(), чтобы убрать знаки после запятой. В выводе будет 8.
print(math.floor(number))
fabs() — абсолютное значение
Эта функция используется для получения модуля числа. То есть, если оно отрицательное, то будет сконвертировано в положительное. Если оно положительное, то так и останется положительным. Функция не округляет число, поэтому если оно окажется дробным, то ничего не изменится.
В качестве аргумента функция принимает то число, которое необходимо конвертировать в положительное значение. Приведем пример кода для примера.
# вывод модуля числа
print(math.fabs(number))
Не забываем импортировать модуль math перед выполнением всех функций, описанных в этой статье.
factorial() — функция факториала
В качестве аргумента этой функции используется целое положительное число, а возвращаемое значение – его факториал. Это такая функция, которая определяется на множестве неотрицательных целых чисел. Математически вычисляется следующим образом.
Допустим, у нас есть число 5. Чтобы получить его факториал, необходимо построить последовательность натуральных чисел вплоть до 5 (включая это значение), а потом перемножить все эти числа между собой.
То есть, в данном случае, если перемножить каждое число, входящее в последовательность 1,2,3,4,5, то получится 120.
Если же извлекается факториал из нуля, то считается, что это единица.
Теперь приведем пример использования этой функции в программировании.
print(«факториала числа», math.factorial(number))
Если в качестве значения переменной number использовать число 5, то в выводе будет отображаться фраза: «факториала числа 120».
Факториал используется в целом спектре разделов математики, включая комбинаторику, математический анализ, теория чисел и так далее. Используется он и в теории вероятностей, поэтому данная функция обрела широкое распространение для различных приложений, прогнозирующих финансовые рынки, ставки в азартных играх и так далее.
Внимание! Нельзя использовать в качестве значения этой переменной отрицательное число. В этом случае будет выдана ошибка ValueError, поскольку в саму функцию факториала не входят отрицательные числа.
Интересный факт: факториал является одной из наиболее быстро растущих функций. Если факториал числа 1 – это 1, то факториал числа 6 – 720, а числа 10 – 3 628 800. А если попробовать получить факториал числа 20, то получится число, почти равняющегося 2 с половиной квинтиллионов. Сумасшедшие значения.
fmod() — остаток от деления
Ее синтаксис такой же простой, как и у описанных выше функций. В качестве аргументов она принимает те числа, которые необходимо разделить и получить остаток. Сами числа прописываются через запятую.
print(math.fmod(-5.2,2))
Видим, что здесь мы использовали как натуральные числа, так и отрицательные дробные. В этом плане функция очень гибкая.
frexp()
Функция принимает только один аргумент – число, для которого нам необходимо найти мантиссу и показатель степени. Использоваться может как положительное, так и отрицательное значение.
Если использовать в качестве аргумента строку, будет возвращена ошибка TypeError.
Для примера приведем фрагмента кода.
# С помощью первой строчки осуществляем импорт модуля math в Python
import math
#Эта строка принимает функцию frexp числа 24.8 в качестве аргумента и возвращает мантиссу и показатель степени на экран.
print(math.frexp(24.8))
fsum() — точная сумма float
Эта функция принимает в качестве аргумента последовательность чисел с плавающей точкой и в качестве результата возвращает их сумму. В качестве аргумента можно использовать итерируемый объект, такой как список или диапазон данных. То есть, любой объект, который может возвращать элементы по одному, может использоваться для того, чтобы просуммировать входящие его значения.
Очевидно, что нельзя использовать строчные данные, если они не были предварительно переведены в числовой формат.
Но это уже тонкости. Давайте для начала упростим задачу. Предположим, нам надо просуммировать все числа, входящие в список numbers. Чтобы это сделать, необходимо написать такой код.
print(«сумма «, numbers, «:», math.fsum(numbers))
Функции возведения в степень и логарифма
Иногда может потребоваться операция возведения в степень или получение логарифма (такие ситуации случаются гораздо реже по сравнению с более простыми функциями). Возведение в степень, вообще, довольно популярная функция. Даже для довольно нетривиальных задач она может пригодиться. Ведь это значительно удобнее, чем умножать несколько одинаковых чисел несколько раз, правильно.
Давайте более подробно рассмотрим особенности использования функций возведения в степень и логарифма в языке Python.
Если вы когда-то пытались перемножить на калькуляторе очень большие числа между собой, то сталкивались с экспонентой. Вообще, значений у этого слова несколько. Например, когда говорят «растет по экспоненте», то это означает, что в каждую следующую единицу времени значение переменное увеличивается больше, чем в предыдущую единицу.
Типичный пример экспоненциального роста – геометрическая прогрессия, когда каждое следующее число больше предыдущего в определенное количество раз, но если брать разницу между двумя предыдущими значениями, то она всегда больше ближе к правой части числового ряда.
Но экспонента – это число, которое соответствует числу Эйлера (e) в определенной степени. Используется для представления очень больших чисел, которые невозможно правильно прочитать в своем привычном виде.
Функция exp () принимает целое число или число с плавающей точкой, а возвращает e в соответствующей степени.
print(«e в степени 5 «, math.exp(5))
print(«e в степени 2.5», math.exp(2.5))
В первом случае будет возвращено значение 148.4132, а во втором – 12.1825
expm1()
В определенной степени, эта функция противоположная предыдущей в том смысле, что она возвращает экспоненту числа с отрицательной степенью. Для наглядности приведем следующий код.
print(math.exp(5)-1)
print(math.expm1(5))
Несмотря на то, что эти две функции по своей природе разные, возвращают они одно и то же значение. Все потому, что первая функция находит экспоненту отрицательного числа, а вторая – числа, противоположного положительному. В остальных аспектах, эти функции работают одинаково.
Вопрос: зачем вообще была придумана эта функция, если ту же задачу можно выполнить и с помощью предыдущей? Дело в том, что очень часто выражение exp()-1 используется в естественном виде в большом количестве математических формул. И это попросту удобно.
log() — логарифм числа
Логарифмы используются в целом спектре видов человеческой деятельности. Так, они широко применяются для создания технических устройств и разработки приложений, которые помогают это делать.
В физике логарифмы используются для измерения интенсивности звука. Так, на каждые следующие 8 децибел интенсивность звука увеличивается вдвое.
В астрономии логарифмы используются для вычисления абсолютной звездной величины, а в химии и медицине – для вычисления pH.
А вот где никто не ожидал увидеть логарифмы – так это в музыке. При этом, каждая следующая нота соответствует другой звуковой частоте. И чтобы построить музыкальную гамму, очень удобно использовать логарифмы этих частот.
Что же такое логарифм? Это степень, в которую надо возвести основание, чтобы получить аргумент, т.е. функция от двух переменных.
log1p()
В целом, эта функция работает так же, как и предыдущая. Ее принцип такой же самый. Единственное исключение – она добавляет к x единицу.
Для использования этой функции, так же, как и во всех предыдущих примерах, необходимо сначала импортировать модуль math, а потом использовать в качестве аргумента число и базу.
import math
print(math.log1p(2))
log10()
Если необходимо вычислить логарифм по основанию 10, то это можно сделать с помощью этой функции. Это значительно удобнее, чем задавать основание отдельно. Соответственно, в качестве аргумента используется число, логарифм которого следует найти.
Эта функция, как и все остальные, используется, как метод модуля math. Соответственно, его нужно вызывать с этим объектом, как положено, через точку.
pow() – степень числа
Операция возведения в степень в Python, как вы могли уже знать, выполняется с помощью оператора **. Нередко начинающие разработчики на этом языке, ошибочно считают, что возведение числа в степень реализуется с помощью оператора ^. Но это не так, хотя и выглядит логично на первый взгляд. Ведь в математике именно этот символ означает данную операцию.
В Python же возведение в степень реализуется именно с помощью двух звездочек.
Первый операнд – это то число, которое нужно возводить в степень. Допустим, это 5. После него ставится знак возведения в степень, после чего ставится второй операнд, который обозначает, в какую степень осуществляется возведение.
Таким образом, эта программа сначала возводит 5 в степень 6, а потом выводит получившееся значение в консоль.
print(5**6)
Этот оператор можно использовать и с другими видами значений: с отрицательными, числами меньше нуля, с отрицательными степенями.
Функция pow() работает аналогичным образом. Сначала в качестве первого аргумента в нее записывается основание – то число, которое нужно возводить в степень. А в качестве второго аргумента используется число, обозначающее степень, в которую следует возвести число.
print(pow(2, 1.5))
Зная эту особенность, можно гибко регулировать
Недостаток функции math.pow() в том, что если значение степени очень большое, будет выдаваться ошибка OverflowError.
sqrt() — квадратный корень числа
Math.sqrt() – это не единственная функция с помощью которой можно произвести операцию возведения в степень. Чтобы более глубоко понять принципы ее работы, надо сравнить также с другими способами получения квадратного корня из числа.
Первый вариант – использовать оператор возведения в степень. Если использовать степень 0,5, программа извлекает квадратный корень. Это очень удобный способ, которым можно пользоваться.
С помощью math.sqrt() можно получить квадратный корень из нуля и положительных чисел. Для этого необходимо в качестве аргумента использовать число, для которого нужно получить квадратный корень.
Недостаток этого метода в том, что он не поддерживает извлечение квадратного корня из отрицательных чисел. Чтобы такая возможность появилась, необходимо подключить другую библиотеку – cmath() и использовать метод cmath.sqrt() с числом в качестве аргумента.
import cmath
sqrt = cmath.sqrt(num)
print(«Квадратный корень из числа » + str(num) + » это » + str(sqrt))
Особенность этой библиотеки в том, что она проводит математические вычисления с комплексными числами, которое и получается в результате получения квадратного корня из отрицательного значения.
Таким образом, функция math.sqrt() – далеко не самая мощная, и для продвинутого функционала требуется совсем другая библиотека. Правда, такая необходимость появляется не так часто. Далеко не всегда надо работать с комплексными числами.
Тригонометрические функции
Одно из характерных преимуществ модуля math() заключается в том, что он поддерживает тригонометрические функции. Поддерживаются все существующие на данный момент – синус, косинус, тангенс, арксинус, арктангенс и так далее.
Рассмотрим самые распространенные тригонометрические функции.
Все они принимают только один аргумент – угол, для которого необходимо найти синус, косинус и так далее.
Получение синуса радиана. Для этого используется функция sin(). Принимает один аргумент – радиан.
Приведем таблицу с подробным перечислением тригонометрических функций в Python и тем, как они используются.
Функция преобразования углов
У внимательного читателя мог на предыдущем этапе появиться вопрос: а что, если я не знаю, сколько радиан в угле? Я знаю только количество градусов. Ничего страшного, ведь библиотека math поддерживает возможность конвертации радиан в градусы и наоборот.
Запомнить очень просто. То, что мы хотим получить, так и называется функция.
Математические константы
# вывод значения PI