Разберемся с простейшими арифметическими операциям над числами, далее рассмотрим стандартные математические функции 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