Глава 5 · Давайте поиграем с числами!

Выражения и основные операции

Выражение — операнды плюс оператор. Начнём с четырёх операций, знакомых из школы — но теперь увидим их не только в коде, а и на числовой прямой, и в виде прямоугольника.

В главе 4 мы разобрались, что такое числа. Теперь научим Python по-настоящему с ними работать — считать, сравнивать, комбинировать. Начнём с самого главного слова этой главы: выражение.

Что такое выражение

5 + 3 — это выражение: у него есть операнды (значения, с которыми работаем — 5 и 3) и оператор (действие — +). У любого выражения есть результат — само выражение можно подставить туда, где ожидается значение:

vyrazhenie.py
print(5 + 3)        # выражение прямо внутри print()
summa = 5 + 3       # результат выражения сохранён в переменную
print(summa * 2)    # summa — тоже операнд в новом выражении
Выражение — не то же самое, что команда (statement)
summa = 5 + 3 целиком — это инструкция (присваивание), а 5 + 3 внутри неё — выражение: у выражения всегда есть значение, у инструкции — нет. Именно поэтому print(x = 5) — ошибка (x = 5 ничего не возвращает), а print(x == 5) — нормальный код.

Сложение и вычитание — движение по числовой прямой

Самая простая модель для + и - — прыжок по числовой прямой: сложение прыгает вправо, вычитание — влево.

012345678910+437
3 + 4 = 7 — прыжок на 4 шага вправо от точки 3
slozhenie.py
print(3 + 4)    # 7 — прыжок вправо
print(3 - 4)    # -1 — прыжок влево, можно уйти в отрицательные числа

Умножение — прямоугольник из клеток

Умножение a * b — это площадь прямоугольника со сторонами a и b: ряды по a клеток, и таких рядов b штук.

4 × 3 = 12
4 × 3 = 12 — 3 ряда по 4 клетки
umnozhenie.py
print(4 * 3)    # 12
print(4 * 0)    # 0 — прямоугольник без высоты не имеет площади

Деление — всегда дробное число

В Python / — это обычное деление, и оно всегда возвращает float, даже если числа делятся нацело:

delenie.py
print(6 / 3)    # 2.0 — float, а не 2
print(7 / 2)    # 3.5
На ноль делить нельзя
5 / 0 вызывает ZeroDivisionError — Python не придумывает результат сам, а честно сообщает, что операция не имеет смысла.

Операторы и реальная жизнь

ОператорЧто делаетПример из жизни
+сложениесумма чеков в корзине
-вычитаниеостаток на счету после покупки
*умножениецена × количество товара
/делениесумма счёта, делённая между друзьями

Про // (целочисленное деление) и % (остаток) — в следующем разделе: это отдельная и очень важная тема.

Практика: выражения и +, -, *, /
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки
Открыть практику →