Menu
CoddyTech

Вложенные If - Else

Часть раздела Основы путешествия по Python на Coddy. Урок 23 из 77.

Вложенные операторы if-else позволяют проверять несколько условий, размещая один оператор if-else внутри другого. Можно вложить блок if в блок else. Это распространённый и допустимый шаблон в Python.

Создай базовую конструкцию if-else:

age = 18
title = ""
if age >= 18:
    title = "Adult"
else:
    title = "Minor"

Теперь добавим вложенное условие внутри блока else:

age = 18
title = ""
allowed_to_drink = False
if age >= 18:
    title = "Adult"
else:
    title = "Minor"
    if age >= 13:
        title = "Teenager"
    else:
        title = "Child"

Также можно вложить условие в блок if:

age = 25
title = ""
allowed_to_drink = False
if age >= 18:
    title = "Adult"
    if age >= 21:
        allowed_to_drink = True
    else:
        allowed_to_drink = False
else:
    title = "Minor"

В обоих примерах внутренний if-else выполняется только тогда, когда выполняется содержащий его блок: тот, что находится в блоке else, выполняется, когда условие age >= 18 ложно, а тот, что находится в блоке if, — когда условие age >= 18 истинно. Размещать оператор if внутри блока else (или блока if) совершенно допустимо. Именно это и делает его «вложенным».

challenge icon

Задание

Новичок

Напиши программу, которая определяет, можно ли смотреть фильм, на основе возраста и наличия родителя.

Примечание: age и with_parent уже заданы для тебя и имеют разные значения в каждом тестовом случае. Не задавай их самостоятельно, просто используй их.

Твоя задача:
Используй вложенные инструкции if-else, чтобы присвоить переменной message одну из следующих строк:

  1. Если возраст равен 18 или больше, присвой message значение "You can watch any movie".
  2. Если возраст меньше 18:
    1. Если with_parent равно True, присвой message значение "You can watch PG-13 movies".
    2. Если with_parent равно False, присвой message значение "You can only watch G-rated movies".

Важно: Поскольку with_parent уже является логическим значением, проверяй его напрямую (например, if with_parent:): не сравнивай его со строкой вроде "true" или "True".

Важно: Строки должны точно совпадать, включая регистр и пунктуацию. Например, используй "PG-13 movies" (буква 'm' строчная), а не "PG-13 Movies".

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

# Напишите здесь свой код с вложенной конструкцией if-else


quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Python