Вложенные конструкции if - else
Часть раздела Основы путешествия по Python на Coddy. Урок 23 из 77.
Вложенные операторы If-Else позволяют проверять несколько условий, помещая один оператор if-else внутрь другого. Вы можете вложить блок if внутрь блока else. Это распространённый и допустимый шаблон в Python.
Создайте базовую конструкцию if-else:
age = 18
title = "None"
if age >= 18:
title = "Adult"
else:
title = "Minor"Теперь добавим вложенное условие внутри блока else:
age = 18
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
else:
title = "Minor"
if age >= 13:
title = "Teenager"
else:
title = "Child"Вы также можете вложить условие внутри блока if:
age = 25
title = "None"
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 выполняется только тогда, когда выполняется внешнее условие, содержащее его. Размещение оператора if внутри блока else (или внутри блока if) полностью допустимо. Именно это и делает его «вложенным».
Задание
НовичокНапишите программу, которая определяет, какие фильмы разрешено смотреть, на основе возраста и наличия родительского сопровождения.
Данный код (не изменяйте):
- Определена переменная
age, которой присваивается значение из ввода - Определена переменная
with_parent, которой присваивается логическое значение. Она равнаTrue, если введено"true", илиFalse, если введено"false" - Определена переменная
messageсо значением"None"
Ваша задача:
Используйте вложенные конструкции if-else, чтобы присвоить переменной message одну из следующих строк:
- Если возраст равен 18 или больше, присвойте
messageзначение"You can watch any movie". - Если возраст меньше 18:
- Если
with_parentравноTrue, присвойтеmessageзначение"You can watch PG-13 movies". - Если
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".
Попробуйте сами
# Получить возраст как целое число
age = int(input())
# Получить родительское сопровождение как булево значение (True/False)
with_parent = input() == "true"
# Объявить переменную с именем message со значением "None"
message = "None"
# Напишите здесь свой вложенный код if-else
# Не изменяйте код ниже этой строки
print(message)В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение — простая логикаЛогические операторы. Часть 3Логические операторы. Часть 47Калькулятор разделения счета
Приветственное сообщениеПолучение данных13Списки: продвинутый уровень
Срезы списков. Часть 1Срезы списков. Часть 2Операторы последовательностейПроверка вхождения2Переменные
ЧислаСтрокиЛогический типПравила именованияПустые переменныеИтоги — Инициализация переменных5Принятие решений
Оператор ifКонструкция if - elseПовторение: Простой калькуляторВложенные конструкции if - else8Циклы
Цикл ForЦикл WhileОператор BreakОператор ContinueПовторение: ФакториалФункция RangeВложенные циклыПовторение: Динамический ввод3Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСокращенная арифметикаИтоги: простая математикаОператоры сравнения6Основы ввода-вывода
ВыводВывод с переменнымиВводПриведение типовПовторение — До 120Повторение — Истина или ложь9Функции
Объявление функцииАргументыВозврат значенияПовторение — функция SigmaПовторение — функция валидацииЗначения по умолчанию12Итерация по последовательностям
Итерация по элементамФункция enumerateИтерация по строкам. Часть 1Итерация по строкам. Часть 2Потренируйтесь самостоятельно: Онлайн-компилятор Python