Привет! Мы уже знаем, как использовать if и else для ветвления на два направления. Но в реальной жизни вариантов часто больше: «если температура выше 30 — жарко, если выше 20 — тепло, если выше 10 — прохладно, иначе — холодно».
Для таких случаев в Python есть конструкция elif (сокращение от else-if).
В этой статье мы разберём:
- Что такое
elif - Синтаксис
if-elif-else - Примеры с числами, строками, вводом
- Когда использовать
elif
- Что нужно знать перед началом
- Основная часть
- Синтаксис if-elif-else
- Простой пример с оценкой
- Пример с температурой
- Пример с вводом пользователя
- Пример с определением времени года
- elif vs вложенные if
- Когда нельзя использовать elif
- Задачи для закрепления
- Нюансы и подводные камни
- Порядок условий
- elif с else
- Множественные elif
- Частые ошибки и как их избежать
- Ошибка 1: Забыл двоеточие
- Ошибка 2: elif без if
- Ошибка 3: Неправильный порядок условий
- Шпаргалка
- Заключение
- КВИЗ
- Что дальше?
Что нужно знать перед началом
Для этого урока тебе понадобится:
- Установленный Python
- Базовое понимание
ifиelse
Совет:
elifпозволяет проверить несколько условий последовательно, без вложенныхif.
Основная часть
Синтаксис if-elif-else
if условие1:
# код, если условие1 истинно
elif условие2:
# код, если условие1 ложно, а условие2 истинно
elif условие3:
# код, если условие1 и условие2 ложны, а условие3 истинно
else:
# код, если все условия ложныВажно:
elifпроверяется только если предыдущие условия были ложны.
Простой пример с оценкой
score = 85
if score >= 90:
print("Отлично")
elif score >= 75:
print("Хорошо")
elif score >= 50:
print("Удовлетворительно")
else:
print("Неудовлетворительно")Результат: "Хорошо"
Пример с температурой
temperature = 25
if temperature > 30:
print("Жарко")
elif temperature > 20:
print("Тепло")
elif temperature > 10:
print("Прохладно")
else:
print("Холодно")Совет: Порядок условий важен. Python проверяет их сверху вниз и останавливается на первом истинном.
Пример с вводом пользователя
choice = input("Выберите действие (1, 2, 3): ")
if choice == "1":
print("Вы выбрали действие 1")
elif choice == "2":
print("Вы выбрали действие 2")
elif choice == "3":
print("Вы выбрали действие 3")
else:
print("Неверный выбор")Пример с определением времени года
month = 7
if month in [12, 1, 2]:
print("Зима")
elif month in [3, 4, 5]:
print("Весна")
elif month in [6, 7, 8]:
print("Лето")
elif month in [9, 10, 11]:
print("Осень")
else:
print("Неверный месяц")elif vs вложенные if
Вложенные if (сложно читать):
score = 85
if score >= 90:
print("Отлично")
else:
if score >= 75:
print("Хорошо")
else:
if score >= 50:
print("Удовлетворительно")
else:
print("Неудовлетворительно")С elif (чисто и читаемо):
score = 85
if score >= 90:
print("Отлично")
elif score >= 75:
print("Хорошо")
elif score >= 50:
print("Удовлетворительно")
else:
print("Неудовлетворительно")Совет: Используй
elifвместо вложенныхif, когда проверяешь одно и то же значение с разными условиями.
Когда нельзя использовать elif
elif нельзя использовать без if.
# Ошибка!
elif x > 10:
print("x > 10")elif всегда идёт после if.
Задачи для закрепления
Задача 1. Запроси у пользователя оценку (0-100). Выведи:
- «Отлично» — если >= 90
- «Хорошо» — если >= 75
- «Удовлетворительно» — если >= 50
- «Неудовлетворительно» — если < 50
Задача 2. Запроси номер дня недели (1-7). Выведи название дня.
Задача 3. Запроси возраст. Выведи:
- «Ребёнок» — 0-12
- «Подросток» — 13-17
- «Взрослый» — 18-64
- «Пенсионер» — 65+
Задача 4. Запроси два числа и оператор (+, -, *, /). Выведи результат операции.
Задача 5. Что выведет код?
x = 5; if x > 10: print(">10"); elif x > 5: print(">5"); elif x > 0: print(">0"); else: print("<=0")Ответы:
Задача 1.
score = int(input("Введите оценку: "))
if score >= 90:
print("Отлично")
elif score >= 75:
print("Хорошо")
elif score >= 50:
print("Удовлетворительно")
else:
print("Неудовлетворительно")Задача 2.
day = int(input("Введите номер дня недели (1-7): "))
if day == 1:
print("Понедельник")
elif day == 2:
print("Вторник")
elif day == 3:
print("Среда")
elif day == 4:
print("Четверг")
elif day == 5:
print("Пятница")
elif day == 6:
print("Суббота")
elif day == 7:
print("Воскресенье")
else:
print("Неверный день")Задача 3.
age = int(input("Введите возраст: "))
if age <= 12:
print("Ребёнок")
elif age <= 17:
print("Подросток")
elif age <= 64:
print("Взрослый")
else:
print("Пенсионер")
Задача 4.
a = float(input("Первое число: "))
b = float(input("Второе число: "))
op = input("Оператор (+, -, *, /): ")
if op == "+":
print(a + b)
elif op == "-":
print(a - b)
elif op == "*":
print(a * b)
elif op == "/":
if b != 0:
print(a / b)
else:
print("Деление на ноль!")
else:
print("Неверный оператор")Задача 5.
# >0Нюансы и подводные камни
Порядок условий
score = 95
if score >= 75:
print("Хорошо") # Выполнится
elif score >= 90:
print("Отлично") # Никогда не выполнитсяПроверяй условия от более строгих к менее строгим.
elif с else
else не обязателен. Если все условия ложны, код просто пропускается.
if x > 10:
print(">10")
elif x > 5:
print(">5")
# Если x <= 5, ничего не выведетсяМножественные elif
Количество elif не ограничено. Чем больше условий, тем сложнее код. Старайся не превышать 4-5 elif.
Частые ошибки и как их избежать
Ошибка 1: Забыл двоеточие
❌ if x > 5 print(">5") — ошибка!
✅ if x > 5: print(">5")
Ошибка 2: elif без if
❌ elif x > 10: ... — ошибка!
✅ if x > 10: ... elif x > 5: ...
Ошибка 3: Неправильный порядок условий
❌ if x > 5: ... elif x > 10: ... — второе условие никогда не выполнится
✅ if x > 10: ... elif x > 5: ...
Шпаргалка
| Что нужно | Как пишется |
|---|---|
| Первое условие | if условие1: |
| Дополнительное условие | elif условие2: |
| Блок по умолчанию | else: |
| Проверка одного значения | if x == 1: elif x == 2: |
Заключение
Сегодня мы узнали:
- Конструкция
elifдля множественных условий - Синтаксис
if-elif-else - Примеры с числами, строками, вводом
- Порядок условий и частые ошибки








