Выражения и основные операции
Выражение — операнды плюс оператор. Начнём с четырёх операций, знакомых из школы — но теперь увидим их не только в коде, а и на числовой прямой, и в виде прямоугольника.
В главе 4 мы разобрались, что такое числа. Теперь научим Python по-настоящему с ними работать — считать, сравнивать, комбинировать. Начнём с самого главного слова этой главы: выражение.
Что такое выражение
5 + 3 — это выражение: у него есть
операнды (значения, с которыми работаем — 5 и
3) и оператор (действие — +).
У любого выражения есть результат — само выражение можно подставить туда, где ожидается значение:
print(5 + 3) # выражение прямо внутри print()
summa = 5 + 3 # результат выражения сохранён в переменную
print(summa * 2) # summa — тоже операнд в новом выражении
summa = 5 + 3 целиком — это инструкция (присваивание), а 5 + 3 внутри неё — выражение: у выражения всегда есть значение, у инструкции — нет. Именно поэтому print(x = 5) — ошибка (x = 5 ничего не возвращает), а print(x == 5) — нормальный код.Сложение и вычитание — движение по числовой прямой
Самая простая модель для + и - —
прыжок по числовой прямой: сложение прыгает вправо, вычитание — влево.
print(3 + 4) # 7 — прыжок вправо
print(3 - 4) # -1 — прыжок влево, можно уйти в отрицательные числа
Умножение — прямоугольник из клеток
Умножение a * b — это площадь прямоугольника со сторонами
a и b: ряды по a
клеток, и таких рядов b штук.
print(4 * 3) # 12
print(4 * 0) # 0 — прямоугольник без высоты не имеет площади
Деление — всегда дробное число
В Python / — это обычное деление, и оно
всегда возвращает float, даже если числа делятся
нацело:
print(6 / 3) # 2.0 — float, а не 2
print(7 / 2) # 3.5
5 / 0 вызывает ZeroDivisionError — Python не придумывает результат сам, а честно сообщает, что операция не имеет смысла.Операторы и реальная жизнь
| Оператор | Что делает | Пример из жизни |
|---|---|---|
+ | сложение | сумма чеков в корзине |
- | вычитание | остаток на счету после покупки |
* | умножение | цена × количество товара |
/ | деление | сумма счёта, делённая между друзьями |
Про // (целочисленное деление) и %
(остаток) — в следующем разделе: это отдельная и очень важная тема.