Логарифмы используются для изображения и представления больших чисел. Журнал – это величина, обратная экспоненте. В этой статье мы подробно рассмотрим функции log(). Логарифмические функции в Python помогают пользователям находить логарифм чисел намного проще и эффективнее.
Содержание
- Понимание функции
- Варианты функций
- 1. log2(x) – основание логарифма 2
- 2. log(n, Base) – основание логарифма n
- 3. log10(x) – основание логарифма 10
- 4. log1p(x)
- Понимание журнала в NumPy
Понимание функции
Чтобы использовать функциональные возможности журнала, нам необходимо импортировать модуль math, используя приведенный ниже оператор.
import math
Нам всем необходимо принять во внимание тот факт, что к функциям журнала нельзя получить прямой доступ. Нам нужно использовать модуль math для доступа к функциям журнала в коде.
Синтаксис:
math.log(x)
Функция math.log(x) используется для вычисления натурального логарифмического значения, т.е. логарифма с основанием e (число Эйлера), которое составляет около 2,71828 переданного ему значения параметра (числовое выражение).
Пример:
import math print("Log value: ", math.log(2))
В приведенном выше фрагменте кода мы запрашиваем логарифмическое значение 2.
Вывод:
Log value: 0.6931471805599453
Варианты функций
Ниже приведены варианты базовой функции журнала в Python:
- log2(х);
- log(x, Base);
- log10(x);
- log1p(x);
1. log2(x) – основание логарифма 2
Функция math.log2(x) используется для вычисления логарифмического значения числового выражения с основанием 2.
Синтаксис:
math.log2(numeric expression)
Пример:
import math print ("Log value for base 2: ") print (math.log2(20))
Вывод:
Log value for base 2: 4.321928094887363
2. log(n, Base) – основание логарифма n
Функция math.log(x, Base) вычисляет логарифмическое значение x, т.е. числовое выражение для определенного (желаемого) базового значения.
Синтаксис:
math.log(numeric_expression,base_value)
Эта функция принимает два аргумента:
- числовое выражение;
- базовое значение.
Примечание. Если функции не задано базовое значение, math.log(x, (Base)) действует как базовая функция журнала и вычисляет журнал числового выражения по основанию e.
Пример:
import math print ("Log value for base 4 : ") print (math.log(20,4))
Вывод:
Log value for base 4 : 2.1609640474436813
3. log10(x) – основание логарифма 10
Функция math.log10(x) вычисляет логарифмическое значение числового выражения с точностью до 10.
Синтаксис:
math.log10(numeric_expression)
Пример:
import math print ("Log value for base 10: ") print (math.log10(15))
В приведенном выше фрагменте кода вычислено логарифмическое значение от 15 до основания 10.
Вывод:
Log value for base 10 : 1.1760912590556813
4. log1p(x)
Функция math.log1p(x) вычисляет журнал (1 + x) определенного входного значения, т.е. x.
Примечание: math.log1p(1 + x) эквивалентно math.log (x).
Синтаксис:
math.log1p(numeric_expression)
Пример:
import math print ("Log value(1+15) for x = 15 is: ") print (math.log1p(15))
В приведенном выше фрагменте кода вычисляется значение журнала (1 + 15) для входного выражения 15.
Таким образом, math.log1p(15) эквивалентен math.log(16).
Вывод:
Log value(1+15) for x = 15 is: 2.772588722239781
Понимание журнала в NumPy
NumPy позволяет нам одновременно вычислять натуральные логарифмические значения входных элементов массива NumPy.
Чтобы использовать метод numpy.log(), нам нужно импортировать модуль NumPy, используя приведенный ниже оператор.
import numpy
Синтаксис:
numpy.log(input_array)
Функция numpy.log() принимает входной массив в качестве параметра и возвращает массив с логарифмическим значением элементов в нем.
Пример:
import numpy as np inp_arr = [10, 20, 30, 40, 50] print ("Array input elements:n", inp_arr) res_arr = np.log(inp_arr) print ("Resultant array elements:n", res_arr)
Вывод:
Array input elements: [10, 20, 30, 40, 50] Resultant array elements: [ 2.30258509 2.99573227 3.40119738 3.68887945 3.91202301]
( 16 оценок, среднее 3.88 из 5 )
Python offers many inbuilt logarithmic functions under the module “math” which allows us to compute logs using a single line. There are 4 variants of logarithmic functions, all of which are discussed in this article.
1. log(a,(Base)) : This function is used to compute the natural logarithm (Base e) of a. If 2 arguments are passed, it computes the logarithm of the desired base of argument a, numerically value of log(a)/log(Base).
Syntax : math.log(a,Base) Parameters : a : The numeric value Base : Base to which the logarithm has to be computed. Return Value : Returns natural log if 1 argument is passed and log with specified base if 2 arguments are passed. Exceptions : Raises ValueError if a negative no. is passed as argument.
Python3
import
math
print
(
"Natural logarithm of 14 is : "
, end
=
"")
print
(math.log(
14
))
print
(
"Logarithm base 5 of 14 is : "
, end
=
"")
print
(math.log(
14
,
5
))
Output :
Natural logarithm of 14 is : 2.6390573296152584 Logarithm base 5 of 14 is : 1.6397385131955606
2. log2(a) : This function is used to compute the logarithm base 2 of a. Displays more accurate result than log(a,2).
Syntax : math.log2(a) Parameters : a : The numeric value Return Value : Returns logarithm base 2 of a Exceptions : Raises ValueError if a negative no. is passed as argument.
Python3
import
math
print
(
"Logarithm base 2 of 14 is : "
, end
=
"")
print
(math.log2(
14
))
Output :
Logarithm base 2 of 14 is : 3.807354922057604
3. log10(a) : This function is used to compute the logarithm base 10 of a. Displays more accurate result than log(a,10).
Syntax : math.log10(a) Parameters : a : The numeric value Return Value : Returns logarithm base 10 of a Exceptions : Raises ValueError if a negative no. is passed as argument.
Python3
import
math
print
(
"Logarithm base 10 of 14 is : "
, end
=
"")
print
(math.log10(
14
))
Output :
Logarithm base 10 of 14 is : 1.146128035678238
3. log1p(a) : This function is used to compute logarithm(1+a) .
Syntax : math.log1p(a) Parameters : a : The numeric value Return Value : Returns log(1+a) Exceptions : Raises ValueError if a negative no. is passed as argument.
Python3
import
math
print
(
"Logarithm(1+a) value of 14 is : "
, end
=
"")
print
(math.log1p(
14
))
Output :
Logarithm(1+a) value of 14 is : 2.70805020110221
Exception
1. ValueError : This function returns value error if number is negative.
Python3
import
math
print
(
"log(a) value of -14 is : "
, end
=
"")
print
(math.log(
-
14
))
Output :
log(a) value of -14 is :
Runtime Error :
Traceback (most recent call last): File "/home/8a74e9d7e5adfdb902ab15712cbaafe2.py", line 9, in print (math.log(-14)) ValueError: math domain error
Practical Application
One of the application of log10() function is that it is used to compute the no. of digits of a number. Code below illustrates the same.
Python3
import
math
print
(
"The number of digits in 73293 are : "
, end
=
"")
print
(
int
(math.log10(
73293
)
+
1
))
Output :
The number of digits in 73293 are : 5
The natural logarithm (log) is an important mathematical function in Python that is frequently used in scientific computing, data analysis, and machine learning applications. Here are some advantages, disadvantages, important points, and reference books related to log functions in Python:
Advantages:
The log function is useful for transforming data that has a wide range of values or a non-normal distribution into a more normally distributed form, which can improve the accuracy of statistical analyses and machine learning models.
The log function is widely used in finance and economics to calculate compound interest, present values, and other financial metrics.
The log function can be used to reduce the effect of outliers on statistical analyses by compressing the scale of the data.
The log function can be used to visualize data with a large dynamic range or with values close to zero.
Disadvantages:
The log function can be computationally expensive for large datasets, especially if the log function is applied repeatedly.
The log function may not be appropriate for all types of data, such as categorical data or data with a bounded range.
Important points:
- The natural logarithm (log) is calculated using the numpy.log() function in Python.
- The logarithm with a base other than e can be calculated using the numpy.log10() or numpy.log2() functions in Python.
- The inverse of the natural logarithm is the exponential function, which can be calculated using the numpy.exp() function in Python.
- When using logarithms for statistical analyses or machine learning, it is important to remember to transform the data back to its original scale after analysis.
Reference books:
“Python for Data Analysis” by Wes McKinney covers the NumPy library and its applications in data analysis in depth, including the logarithmic function.
“Numerical Python: A Practical Techniques Approach for Industry” by Robert Johansson covers the NumPy library and its applications in numerical computing and scientific computing in depth, including the logarithmic function.
“Python Data Science Handbook” by Jake VanderPlas covers the NumPy library and its applications in data science in depth, including the logarithmic function.
This article is contributed by Manjeet Singh. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Last Updated :
29 Mar, 2023
Like Article
Save Article
Эта статья посвящена математическим функциям в 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
написан на C
, но связан с интерпретатором. Он содержит математические функции и переменные, о которых дальше и пойдет речь.
Функции представления чисел
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.frexp(24.8))
Вывод:
(0.775, 5)
Функция fsum() — точная сумма float
Вычисляет точную сумму значений с плавающей точкой в итерируемом объекте и сумму списка или диапазона данных.
Пример:
# Импорт модуля math
import math
# сумма списка
numbers=[.1,.2,.3,.4,.5,.6,.7,.8,8.9]
print("сумма ", numbers, ":", math.fsum(numbers))
# сумма диапазона
print("сумма чисел от 1 до 10:", math.fsum(range(1,11)))
Вывод:
сумма [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 8.9] : 12.5
сумма чисел от 1 до 10: 55.0
Функции возведения в степень и логарифма
Функция exp()
Эта функция принимает один параметр в виде дробного числа и возвращает e^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
Python math.log(x, base) is a built-in function to get the essential logarithm function. The natural logarithm has a base of e (approximately 2.71828). You can also use the math.log() function to calculate logarithms with other bases by providing the optional base parameter.
Syntax
Arguments
This function takes two arguments:
num -> Whose log do we want to find
Base -> With which base do we need to find a log
Return Value
This function can return two types of values:
- Return natural value if only 1 argument is passed.
- Return the log with specified based if two arguments are passed.
But the log(x, base) function throws a ValueError exception if any value is passed as an argument.
Example
# Importing math library
import math
# initializing values
num = 15
base = 5
print("Natural log of ", num, " is: ", math.log(num))
print("The logarithm of ", num, " of the base ",
base, " is: ", math.log(num, base))
Output
Natural log of 15 is: 2.70805020110221
The logarithm of 15 of the base 5 is: 1.6826061944859854
In this program, we initialized the value, then calculated the natural logarithm of the number, and in the next line, we calculated the logarithm of base 5.
Example 2
# Importing math library
import math
# By taking input from user
num = int(input("Enter the number: "))
base = int(input("Enter the base: "))
print("Natural log of ", num, " is: ", math.log(num))
print("Logarithm of base ", base, " of the number ",
num, " is: ", math.log(num, base))
Output
Enter the number: 12
Enter the vase: 8
Natural log of 12 is: 2.4849066497880004
Logarithm of base 8 of the number 12 is: 1.1949875002403856
In this program, we have taken input from the user, then calculated the natural logarithm of the number, and in the next line, we calculated the logarithm of base 8.
That’s it.
На чтение 11 мин Просмотров 3.9к. Опубликовано 05.12.2021
В этом уроке мы познакомимся с встроенным модулем стандартной библиотеки Python. Этот модуль предоставляет множество функций для математических вычислений. В целях ускорения вычислений данный модуль «под капотом» написан на языке C.
Содержание
- Функции представления чисел
- ceil() и floor() — целая часть числа
- Функция fabs() — модуль числа
- factorial() — функция факториала
- Функция fmod() — остаток от деления
- Функция frexp()
- Функция fsum() — точная сумма float
- Функции возведения в степень и логарифма
- Функция exp()
- Функция expm1()
- Функция log() — логарифм числа
- Функция log1p()
- Функция log10()
- Функция pow() — степень числа
- Функция sqrt() — квадратный корень числа
- Тригонометрические функции
- Функция преобразования углов
- Математические константы
Функции представления чисел
ceil() и floor() — целая часть числа
Эти функции мы уже рассматривали в одной из прошлых статей.
Кратко повторим.
ceil() и floor() — способы выполнить округление. Обе принимают число с дробной частью (тип float), а возвращают целое (тип int). Разница же между ними в том, что ceil() округляет число вверх (до ближайшего большего целого числа), а floor() — вниз.
from math import floor, ceil
float_var = 3.14
first_int_var = floor(float_var)
second_int_var = ceil(float_var)
print(f'Число {float_var} имеет тип {type(float_var)}')
print(f'Округляем число {float_var} вниз и получаем {first_int_var}')
print('С типом', type(first_int_var))
print(f'Округляем число {float_var} вверх и получаем {second_int_var}')
print('С типом', type(second_int_var))
# Вывод:
Число 3.14 имеет тип <class 'float'>
Округляем число 3.14 вниз и получаем 3
С типом <class 'int'>
Округляем число 3.14 вверх и получаем 4
С типом <class 'int'>
Не забудьте импортировать модуль math в свой проект!
Функция fabs() — модуль числа
Как и встроенная функция Питона abs, функция math.fabs возвращает модуль числа (если чило отрицательное, то отбрасывается знак «-»). Но есть между ними и важные отличия. Во-первых, math.fabs не предназначена для работы с комплексными числами, во-вторых, в отличие от abs, она возвращает не целочисленное, а дробное число.
from math import fabs
var = -3
first_int_var = abs(var)
second_int_var = fabs(var)
print(f'Число {var} имеет тип {type(float_var)}')
print(f'Модуль числа {var}, полученный функцией abs: {first_int_var}')
print('С типом', type(first_int_var))
print(f'Модуль числа {float_var}, полученный функцией fabs: {second_int_var}')
print('С типом', type(second_int_var))
print(abs(complex(1, 2)))
print(fabs(complex(1, 2)))
# Вывод:
Число -3 имеет тип <class 'int'>
Модуль числа -3, полученный функцией abs: 3
С типом <class 'int'>
Модуль числа -3, полученный функцией fabs: 3.0
С типом <class 'float'>
2.23606797749979
Traceback (most recent call last):
File "C:UsersivandAppDataRoamingJetBrainsPyCharm2021.2scratchesscratch.py", line 12, in
print(fabs(complex(1, 2)))
TypeError: can't convert complex to float
factorial() — функция факториала
Эта функция предназначена для получения факториала.
Пример:
from math import factorial
var = 3
first_int_var = factorial(var)
print(f'Число {var} имеет тип {type(var)}')
print(f'Факториал числа {var}, полученный функцией factorial: {first_int_var}')
print('С типом', type(first_int_var))
# Вывод:
Число 3 имеет тип <class 'int'>
Факториал числа 3, полученный функцией factorial: 6
С типом <class 'int'>
Естественно, функция принимает только целое положительное число.
from math import factorial
var = -3
first_int_var = factorial(var)
print(f'Число {var} имеет тип {type(var)}')
print(f'Факториал числа {var}, полученный функцией factorial: {first_int_var}')
print('С типом', type(first_int_var))
# Вывод:
Traceback (most recent call last):
File "C:UsersivandAppDataRoamingJetBrainsPyCharm2021.2scratchesscratch.py", line 4, in
first_int_var = factorial(var)
ValueError: factorial() not defined for negative values
from math import factorial
var = 3.14
first_int_var = factorial(var)
print(f'Число {var} имеет тип {type(var)}')
print(f'Факториал числа {var}, полученный функцией factorial: {first_int_var}')
print('С типом', type(first_int_var))
# Вывод:
C:UsersivandAppDataRoamingJetBrainsPyCharm2021.2scratchesscratch.py:4: DeprecationWarning: Using factorial() with floats is deprecated
first_int_var = factorial(var)
Traceback (most recent call last):
File "C:UsersivandAppDataRoamingJetBrainsPyCharm2021.2scratchesscratch.py", line 4, in
first_int_var = factorial(var)
ValueError: factorial() only accepts integral values
Функция fmod() — остаток от деления
Функция fmod() является расширением оператора % — в отличие от него, данная функция может работать с числами с плавающей точкой.
Пример:
from math import fmod
var = 3.14
print('fmod(var, 2)', fmod(var, 2))
print('fmod(2, var)', fmod(2, var))
print('fmod(var, 1)', fmod(var, 1))
print('fmod(var, 3.14)', fmod(var, 3.14))
print('fmod(var, 50)', fmod(var, 50))
# Вывод:
fmod(var, 2) 1.1400000000000001
fmod(2, var) 2.0
fmod(var, 1) 0.14000000000000012
fmod(var, 3.14) 0.0
fmod(var, 50) 3.14
Функция frexp()
Эта функция возвращает мантиссу и показатель степени.
Пример:
from math import frexp
var = 3.14
print('frexp(var)', frexp(var))
# Вывод:
frexp(var) (0.785, 2)
Функция fsum() — точная сумма float
Вычисляет точную сумму значений с плавающей точкой в итерируемом объекте и сумму списка или диапазона данных.
Пример:
from math import fsum
var_list = [1/i for i in range(1, 10)]
print(f'Сумма элементов последовательностиn{var_list}nравна', fsum(var_list))
# Вывод:
Сумма элементов последовательности
[1.0, 0.5, 0.3333333333333333, 0.25, 0.2, 0.16666666666666666, 0.14285714285714285, 0.125, 0.1111111111111111]
равна 2.828968253968254
Функции возведения в степень и логарифма
Функция exp()
Эта функция принимает один параметр в виде дробного числа и возвращает e^x.
Пример:
from math import exp
var_list = 3.14
print(f'exp(3.14):', exp(var_list))
# Вывод:
exp(3.14): 23.103866858722185
Функция expm1()
Эта функция работает так же, как и exp, но возвращает exp(x)-1. Здесь, expm1 значит exm-m-1, то есть, exp-minus-1.
Пример:
from math import exp, expm1
var_list = 3.14
print(f'exp(3.14) - 1:', exp(var_list) - 1)
print(f'expm1(3.14):', expm1(var_list))
# Вывод:
exp(3.14) - 1: 22.103866858722185
expm1(3.14): 22.103866858722185
Функция log() — логарифм числа
Функция log(x[,base]) находит логарифм числа x по основанию e (по умолчанию). base— параметр опциональный. Если нужно вычислить логарифм с определенным основанием, его нужно указать.
Пример:
from math import log
var_list = 3.14
print(f'log(3.14):', log(var_list))
# Вывод:
log(3.14): 1.144222799920162
Функция log1p()
Эта функция похожа на функцию логарифма, но добавляет 1 к x. log1p значит log-1-p, то есть, log-1-plus.
Пример:
from math import log, log1p
var_list = 3.14
print(f'log(3.14 + 1):', log(var_list + 1))
print(f'log1p(3.14):', log1p(var_list))
# Вывод:
log(3.14 + 1): 1.420695787837223
log1p(3.14): 1.420695787837223
Функция log10()
Вычисляет логарифм по основанию 10.
Пример:
from math import log10
var_list = 3.14
print(f'log10(3.14):', log10(var_list))
# Вывод:
log10(3.14): 0.49692964807321494
Функция pow() — степень числа
Используется для нахождения степени числа. Синтаксис функции pow(Base, Power). Она принимает два аргумента: основание и степень.
Пример:
from math import pow
var_list = 3.14
print(f'pow(3.14, 10):', pow(var_list, 10))
print(f'pow(10, 3.14):', pow(10, var_list))
print(f'pow(10, 10):', pow(10, 10))
# Вывод:
pow(3.14, 10): 93174.3733866435
pow(10, 3.14): 1380.3842646028852
pow(10, 10): 10000000000.0
Функция sqrt() — квадратный корень числа
Эта функция используется для нахождения квадратного корня числа. Она принимает число в качестве аргумента и находит его квадратный корень.
Пример:
from math import sqrt var_list = 3.14 print(f'sqrt(3.14):', sqrt(var_list)) print(f'sqrt(93174.3733866435):', sqrt(93174.3733866435)) print(f'sqrt(10000000000):', sqrt(10000000000)) # Вывод: sqrt(3.14): 1.772004514666935 sqrt(93174.3733866435): 305.2447761824001 sqrt(10000000000): 100000.0
Тригонометрические функции
В Python есть следующие тригонометрические функции.
Функция | Значение |
sin | принимает радиан и возвращает его синус |
cos | принимает радиан и возвращает его косинус |
tan | принимает радиан и возвращает его тангенс |
asin | принимает один параметр и возвращает арксинус (обратный синус) |
acos | принимает один параметр и возвращает арккосинус (обратный косинус) |
atan | принимает один параметр и возвращает арктангенс (обратный тангенс) |
sinh | принимает один параметр и возвращает гиперболический синус |
cosh | принимает один параметр и возвращает гиперболический косинус |
tanh | принимает один параметр и возвращает гиперболический тангенс |
asinh | принимает один параметр и возвращает обратный гиперболический синус |
acosh | принимает один параметр и возвращает обратный гиперболический косинус |
atanh | принимает один параметр и возвращает обратный гиперболический тангенс |
Пример:
from math import sin, cos, tan, acos, atan, sinh, acosh, atanh, asin
var = 0.5
print('sin(var):', sin(var))
print('cos(var):', cos(var))
print('tan(var):', tan(var))
print('acos(var):', acos(var))
print('asin(var):', asin(var))
print('atan(var):', atan(var))
print('sinh(var):', sinh(var))
print('acosh(3.14):', acosh(3.14))
print('atanh(var):', atanh(var))
# Вывод:
sin(var): 0.479425538604203
cos(var): 0.8775825618903728
tan(var): 0.5463024898437905
acos(var): 1.0471975511965979
asin(var): 0.5235987755982989
atan(var): 0.4636476090008061
sinh(var): 0.5210953054937474
acosh(3.14): 1.810991348900196
atanh(var): 0.5493061443340549
Функция преобразования углов
Эти функции преобразуют угол. В математике углы можно записывать двумя способами: угол и радиан. Есть две функции в Python, которые конвертируют градусы в радиан и обратно.
• degrees(): конвертирует радиан в градусы;
• radians(): конвертирует градус в радианы;
Пример:
from math import degrees, radians
var_1 = 3.14
var_2 = 4.13
print('degrees(var_1):', degrees(var_1))
print('radians(var_2):', radians(var_2))
# Вывод:
degrees(var_1): 179.9087476710785
radians(var_2): 0.07208209810736581
Математические константы
В Python есть две математические константы: pi и e.
1. pi: это математическая константа со значением 3.1416..
2. e: это математическая константа со значением 2.7183..
Пример:
import math
# вывод значения PI
print("значение PI", math.pi)
# вывод значения e
print("значение e", math.e)
Вывод:
значение PI 3.141592653589793
значение e 2.718281828459045