Представьте, что программа — это дорога. До сих пор мы двигались по ней только прямо. Но что, если на пути развилка? Условные конструкции `if` и `else` — это и есть те самые развилки, которые позволяют программе принимать решения и выбирать путь в зависимости от обстоятельств. Холодно на улице? Программа посоветует надеть куртку. Пользователь ввел правильный пароль? Откроем ему доступ. В этом уроке мы научимся строить такие "логические развилки". Вы освоите базовый синтаксис `if-else`, поймете важность отступов, научитесь избегать частых ошибок и начнете писать код, который умеет адаптироваться к разным ситуациям.
- Модуль 1: Основы синтаксиса Python
- Модуль 2: Переменные и типы данных
- Модуль 3: Операторы
- Арифметические операторы (+, -, *, /).
- Целочисленное деление и остаток (// и %).
- Возведение в степень (**).
- Операторы сравнения.
- Логические операторы (and, or, not).
- Операторы присваивания (=, +=, -=).
- Операторы принадлежности (in, not in).
- Операторы идентичности (is, is not).
- Битовые операторы.
- Тернарный оператор.
- Модуль 4: Ввод и вывод данных
- Модуль 5: Условные конструкции
- Модуль 6: Циклы
- Модуль 7: Строки
- Модуль 8: Списки
- Модуль 9: Кортежи
- Модуль 10: Словари
- Модуль 11: Множества
- Модуль 12: Функции
- Модуль 13: Встроенные функции
- Модуль 14: Работа с файлами
- Модуль 15: Обработка исключений
- Модуль 16: Модули и пакеты
- Модуль 17: ООП - Основы
- Модуль 18: ООП - Продвинутый уровень
- Модуль 19: Декораторы
- Модуль 20: Генераторы и итераторы
- Модуль 21: Регулярные выражения
- Модуль 22: Дата и время
- Модуль 23: Математические операции
- Модуль 24: Работа с сетью
- Модуль 25: Асинхронное программирование
- Модуль 26: Многопоточность
- Модуль 27: Тестирование
- Модуль 28: Базы данных
- Модуль 29: Алгоритмы и структуры данных
- Модуль 30: Продвинутые возможности
Простейшее условие `if`
Начнем с основ. Конструкция `if` проверяет условие и, если оно истинно (True), выполняет блок кода. Дополните код, вставив ключевое слово для проверки условия и обязательный символ в конце строки.
temperature = 25
input1S temperature > 20input2S
print("Сегодня тепло!")Когда условие истинно
Проанализируйте код. Переменная `age` установлена в `20`. Условие в `if` проверяет, больше или равно это значение `18`. Что выведет программа в результате?
age = 20
if age >= 18:
print("Доступ разрешен")
else:
print("Доступ запрещен")Когда условие ложно
Теперь посмотрим на обратную ситуацию. В этом коде переменная `age` равна `16`. Какое сообщение выведет программа, когда проверит условие?
age = 16
if age >= 18:
print("Доступ разрешен")
else:
print("Доступ запрещен")Ошибка: присваивание вместо сравнения
Одна из самых частых ошибок у новичков — использование одного знака `=` для сравнения. В Python для проверки на равенство используется двойной знак `==`. Найдите и исправьте эту ошибку в коде.
role = "guest"if role = "admin": print("Полный доступ")else: print("Ограниченный доступ")Важность правильных отступов
В Python отступы — это не просто украшение, а часть синтаксиса. Они определяют, какие строки кода относятся к блоку `if`, а какие — к `else`. В этом коде нарушены отступы. Исправьте их, чтобы программа работала корректно.
temp = 15if temp > 20:print("Тепло")else:print("Прохладно")Соберите конструкцию if-else
Строки кода для проверки баланса счета перемешались. Расставьте их в правильном порядке, чтобы получилась работающая программа. Помните, что `else` не может существовать без `if`.
else: print("Недостаточно средств")if balance >= 100:balance = 50 print("Покупка совершена")Проверка четности числа
Эта программа проверяет, является ли введенное пользователем число четным или нечетным. Для этого используется оператор `% 2`, который вычисляет остаток от деления на 2. Если пользователь введет число `7`, что выведет программа?
# Пользователь вводит: 7
number = int(input("Введите число: "))
if number % 2 == 0:
print("Четное")
else:
print("Нечетное")Соберите проверку из токенов
Используя готовые фрагменты кода из банка, соберите полную условную конструкцию для проверки, является ли число `num` положительным. Если да, выведите "Positive", иначе — "Not positive". Некоторые токены лишние.
num = -10
input1S num > 0 input2S
print("Positive")
input3S
print("Not positive")Истина или Ложь?
Понимание того, как вычисляются условия — ключ к условным конструкциям. Даны две переменные: `a = 10` и `b = 20`. Распределите выражения по двум колонкам: те, что вернут `True` (Истина), и те, что вернут `False` (Ложь).
a < ba == 10b < 10a != 20a > bb >= 20