Условие if в Python: if, elif, else, and и or с примерами
· 3 мин чтения СтатьяPython

Условие if в Python: if, elif, else, and и or с примерами

Как работает условие if в Python: синтаксис с двоеточием и отступом, elif и else, сравнения, and, or и not, вложенные условия и частые ошибки новичков.

Перейти к практике по теме курса ↓

Условие if выполняет блок кода, только если выражение истинно: if условие:, а под ним — строки с отступом в четыре пробела. Для других случаев добавляют elif («иначе если») и else («иначе»). Двоеточие в конце строки и одинаковый отступ обязательны: именно по отступу Python понимает, что относится к условию.

age = 15
if age >= 18:
    print("Взрослый билет")
elif age >= 7:
    print("Детский билет")
else:
    print("Бесплатно")

Сравнения

Сравнивают знаками == (равно), != (не равно), >, <, >=, <=. Одно = — это присваивание, а не сравнение: if x = 5 выдаст ошибку. Проверка вхождения — in: if "@" in email:. Python умеет цепочки: if 10 <= n <= 30: — число от 10 до 30.

and, or, not

and — должны выполниться оба условия: if n % 2 == 0 and n > 0: — положительное чётное. or — достаточно одного: if n % 4 == 0 or n // 10 == n % 10: — делится на 4 или у двузначного числа одинаковые цифры. not переворачивает условие: if not text: — строка пустая.

Как это работает в цикле

Чаще всего if стоит внутри цикла: перебрать числа и посчитать подходящие.

count = 0
for n in range(10, 31):
    if n % 4 == 0 or n // 10 == n % 10:
        count += 1
print(count)

Здесь n % 4 — остаток от деления на 4, n // 10 — десятки, n % 10 — единицы. Счётчик растёт только для чисел, подошедших под условие.

Частые ошибки

Забытое двоеточие — SyntaxError. Разные отступы в одном блоке — IndentationError. Порядок elif важен: проверяется первое подошедшее условие, остальные пропускаются, поэтому строгие условия ставят выше мягких.

Частые вопросы

Чем elif отличается от второго if?

Elif проверяется только если предыдущие условия не выполнились, и сработает максимум одна ветка. Несколько отдельных if проверяются все подряд и могут сработать одновременно.

Обязательно ли писать else?

Нет, else нужен, только если в остальных случаях что-то должно произойти. Условие if может стоять и без elif и else.

Почему Python ругается на отступ?

Строки внутри условия должны быть сдвинуты одинаково, обычно на четыре пробела. Смешанные пробелы и табуляция или разный сдвиг в одном блоке вызывают ошибку отступа.

Где потренироваться

Условиям посвящён урок «Условия», циклу — «Цикл for и range» курса Python; код в них запускается прямо на странице. Задачи без регистрации — в тренажёре Python. Счётчики и range подробно — в статье «Цикл for и range в Python».

Попробуйте задание из курса

Откройте первый урок: теория и начало практики доступны без регистрации.

Курс «Python» Код запускается прямо на странице, задания проверяются на скрытых примерах. Первые уроки открыты без регистрации.
Открыть курс

Ещё в блоге

СтатьяJavaScript Что такое JavaScript простыми словами: для чего он нужен и как его включить JavaScript — язык, который оживляет страницы сайтов. Что это простыми словами, зачем он браузеру, как включить JavaScript и с чего начать учить. · 5 мин чтения Статья1С Тренажёр 1С бесплатно: как потренироваться без установленной программы Где потренироваться в 1С, если программы нет: учебная база в браузере, документы и проведение, отчёты, задания с проверкой и письма коллег — бесплатно. · 4 мин чтения СтатьяPython Что такое Python простыми словами и для чего он нужен Python — язык программирования, на котором проще всего начать. Что это простыми словами, где его используют, как выглядит программа и с чего начать. · 5 мин чтения СтатьяТурецкий Гармония гласных в турецком языке: правило -lar/-ler и четыре гласные Как работает гармония гласных в турецком: какая гласная в окончании, двойной вариант -lar/-ler, четверной -ım/-im/-um/-üm, таблица и примеры для начинающих. · 3 мин чтения