Глава 9 · Выполняй мою команду!

elif — несколько вариантов

Когда исходов больше двух — elif проверяет условия по очереди, и первое истинное побеждает.

Когда исходов больше двух

Температура: ниже нуля — «мороз», от 0 до 14 — «прохладно», от 15 до 24 — «комфортно», иначе — «жарко». Четыре исхода, а не два — здесь if/else уже не хватает.

СТАРТtemperaturetemperature <0?ДА"мороз"НЕТtemperature <15?ДА"прохладно"НЕТtemperature <25?ДА"комфортно"НЕТ"жарко"КОНЕЦ
if/elif/else как лестница условий — первое истинное условие выигрывает, остальное пропускается
elif_cepochka.py
temperature = 10

if temperature < 0:
    print("мороз")
elif temperature < 15:
    print("прохладно")
elif temperature < 25:
    print("комфортно")
else:
    print("жарко")

elif — сокращение от else if, «а иначе, если». Он добавляет ещё одно условие между if и else.

Первое истинное условие побеждает

Python проверяет условия по порядку, сверху вниз, и останавливается на первом истинном — даже если следующие условия тоже подошли бы. Оставшаяся часть цепочки просто пропускается.

Порядок условий имеет значение

nepravilnyj_poryadok.py
score = 95

if score >= 50:
    bukva = "D"
elif score >= 90:
    bukva = "A"   # никогда не выполнится для score >= 50!
score >= 50?TrueFalsebranch выбрана —остальные elifПРОПУЩЕНЫ, даже >=…проверяем следующееусловие
score = 95: если >= 50 стоит первым, программа никогда не дойдёт до >= 90
score = 95 попадёт в «D», а не в «A»
Раз score >= 50 стоит первым и 95 >= 50 истинно, Python выбирает именно эту ветку и даже не проверяет score >= 90.

Исправление — расположить условия от более строгого к менее строгому:

pravilnyj_poryadok.py
score = 95

if score >= 90:
    bukva = "A"
elif score >= 75:
    bukva = "B"
elif score >= 50:
    bukva = "C"
else:
    bukva = "D"
★★ Самостоятельная задача
Три ступени скидки

Постройте elif-лестницу: сумма покупки >= 5000 — скидка 15%, >= 2000 — скидка 10%, >= 500 — скидка 5%, иначе — скидки нет. Проверьте на сумме 3000 — какая скидка выиграет?

Практика: elif-лестница и порядок условий
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки
Открыть практику →