Главная Сборник задач

Урок 8. Операторы и выражения

Чтобы программы были умными, они должны уметь вычислять, сравнивать данные и принимать решения. Для этого в Python существуют операторы — специальные символы, которые выполняют определенные действия над переменными или значениями (которые называются операндами).

1. Математические операторы (Продвинутые)

Вы уже знаете базовые: +, -, * и /. Но в программировании часто нужны более хитрые вычисления. Давайте познакомимся с операторами, которые станут вашими лучшими друзьями при решении задач.

Оператор Название Как работает? Пример
** Возведение в степень Умножает число само на себя указанное количество раз. 2 ** 3 (даст 8)
// Целочисленное деление Делит одно число на другое, но отбрасывает дробную часть. Показывает, сколько раз число целиком поместилось в другое. 10 // 3 (даст 3)
% Остаток от деления Показывает, что осталось после того, как мы взяли максимально возможное целое. Это самый популярный оператор для определения чётности числа! 10 % 3 (даст 1)

Симодулятор: Хитрые операторы

Меняйте числа и выбирайте оператор в центральном выпадающем списке, чтобы понять, как работает магия деления в Python.

=
3
Тройка помещается в десятку ровно 3 раза целиком (3 * 3 = 9). Дробная часть отбрасывается.

2. Операторы сравнения

Эти операторы не вычисляют числа, они вычисляют правду или ложь. Результатом их работы всегда будет логический тип данных (Boolean): True или False.

⚖️

Один или два знака равно?

Это самая частая ошибка новичков. Одинарное равно = используется только для того, чтобы положить значение в переменную (коробочку). А вот чтобы спросить у компьютера: "Эти два числа равны?", используется двойное равно ==.

score = 100 # Присваиваем переменной значение 100

print(score == 100) # Равно ли? (Выведет True)
print(score != 100) # НЕ равно ли? (Выведет False)
print(score > 50)   # Больше? (Выведет True)
print(score <= 99)  # Меньше ИЛИ равно? (Выведет False)
True > False > True > False

3. Логические операторы (and, or, not)

Что если нам нужно проверить сразу два условия? Например: "Если игроку больше 18 лет И у него есть 100 монет". Для объединения проверок мы используем английские слова.

Оператор Смысл Как работает?
and (И) Строгость Выдаст True, только если ОБА условия по краям правдивы. Если хотя бы одно ложно — результат False.
or (ИЛИ) Снисходительность Выдаст True, если ХОТЯ БЫ ОДНО условие правдиво. Ложь будет только если оба ложны.
not (НЕ) Отрицание Работает как переключатель. Превращает True в False и наоборот.

Симодулятор: Логические ворота

Нажимайте на переключатели (чтобы сделать их True или False) и меняйте центральный оператор, чтобы увидеть итоговый результат выражения.

Условие 1
False
and
Условие 2
False
РЕЗУЛЬТАТ: False

4. Комбинируем всё вместе

Давайте посмотрим, как операторы сравнения и логики работают в реальной проверке.

age = int(input("Введите ваш возраст: "))
ticket = input("Есть ли у вас билет? (да/нет): ")

# Проверяем: возраст должен быть 18 или больше, И билет должен быть равен "да"
can_enter = (age >= 18) and (ticket == "да")

print(f"Доступ разрешен: {can_enter}")
Введите ваш возраст: 20 Есть ли у вас билет? (да/нет): да > Доступ разрешен: True

🧠 Проверь себя

Закрепим понимание операторов:

1. Что выведет код: print(11 % 2)?
Показать правильный ответ
Выведет 1. Двойка целиком помещается в 11 пять раз (2 * 5 = 10). Остаток до 11 равен 1. Это значит, что число 11 — нечётное.
2. В чем разница между = и ==?
Показать правильный ответ
Одинарное равно означает "положить значение в переменную". Двойное равно — это вопрос: "Равны ли значения слева и справа?".
3. Что выдаст выражение: True and False?
Показать правильный ответ
Выдаст False. Оператор and очень строгий: ему нужно, чтобы ОБА условия были правдивыми.