Python 3. Арифметические операции

В этой статье разберем числовые типы данных в Python 3: int, float и complex, а также разберём арифметические операции.

Числовые типы данных

Python 3 — позволяет создавать три разных типа числовых объектов:

  • int — целое, положительное или отрицательное число. В Python нет ограничений на длину целых чисел, то есть целые числа могут быть очень большими. Пример целого числа — 5.
  • float — число с плавающей точкой. Это число уже имеет ограничение оно не может быть больше чем 2 в степени 1024. Пример такого числа — 1.5.
  • complex — комплексное число. Про них можете почитать отдельно, например в этой статье. Пример комплексного числа 2 + 2j.
a = 5
b = 1.5
c = 2 + 2j
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'complex'>

Арифметические операции

Python 3 поддерживает следующие операции:

print(5 + 2) # 7 (сложение)
print(7 - 3) # 4 (вычитание)
print(3 * 4) # 12 (умножение)
print(10 / 2) # 5.0 (деление) (в результате всегда float)
print(10 / 3) # 3.3333333333333335
print(5 ** 3) # 125 (возведение в степень)
print(14 // 4) # 3 (деление на цело)
print(14 % 4) # 2 (остаток от деления)

При делении всегда получаем число с плавающей точкой (float), но мы можем преобразовать его в целое:

print(int(10 / 2)) # 5

При этом всё что находится после запятой — отбрасывается.

Точно также мы можем превратить целое число в число с плавающей точкой:

print(float(2)) # 2.0

Порядок выполнения операций

Арифметические операции в Python имеют свои приоритеты:

  • Возведение в степень (**) выполняется первее всего;
  • Затем выполняются умножение (*) и деление (/, //, %);
  • И в самом конце выполняется сложение (+) и вычитание (-).

Некоторые ошибки при работе с числами

Если к целому числу (int) не предоставляют каких-то ограничений, то число с плавающей точкой (float) не может быть больше, чем 2 в степени 1024. Из этого мы можем получить следующую ошибку:

print (2.5 ** 1024)

###
Traceback (most recent call last):
  File "<pyshell#73>", line 1, in <module>
    print (2.5 ** 1024)
OverflowError: (34, 'Result too large')

Ещё одной, довольно известной ошибкой считается деление на ноль. Запомните, на ноль делить нельзя:

print(3 / 0)

###
Traceback (most recent call last):
  File "<pyshell#92>", line 1, in <module>
    print(3 / 0)
ZeroDivisionError: division by zero

Итог

Из статьи вы узнали какие есть типы данных в Python для хранения чисел, а также познакомились с арифметическими операциями.

Про другие типы данных можете почитать здесь и здесь.

Оставьте комментарий