Перейти к основному содержимому

Вложенные операторы if

Оператор if может содержать другие операторы if. Когда один находится внутри другого, мы называем их вложенными операторами if.

Пример

Prompt
Напишите программу на Python, которая присваивает x значение 41, а затем с помощью вложенного оператора if проверяет, больше ли x чем 10, и если да, проверяет, больше ли x также чем 20. Выведите соответствующие сообщения для каждого случая.
Вывод: полная программа на Python

Как работает вложенный if

Вложенность добавляет решению глубину: один выбор ведёт к следующему. Python начинает с самого внешнего условия и двигается внутрь.

Пример

Два условия, проверенные с помощью вложенности:

Prompt
Напишите программу на Python, которая с помощью вложенных операторов if проверяет, может ли человек водить машину. Присвойте age значение 25, а has_license — True, затем сначала проверьте age >= 18, а потом наличие прав.
Вывод: полная программа на Python

Несколько уровней вложенности

Вложенность может быть сколь угодно глубокой, но каждый новый уровень делает код труднее для понимания.

Пример

Вложенность на три уровня:

Prompt
Напишите программу на Python с тремя уровнями вложенных операторов if для оценки студента. Проверьте score >= 60, затем attendance >= 80, затем равно ли submitted значению True.
Вывод: полная программа на Python

Вложенный if и логические операторы

Логический оператор, например and, иногда может заменить вложенность и сократить код. Что подойдёт лучше, зависит от вашей логики.

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

Пример

Вот вложенный вариант:

Prompt
Напишите программу на Python, которая с помощью вложенных операторов if проверяет, что temperature > 20 и is_sunny равно True. Выведите «Идеальная погода для пляжа!», если оба условия выполнены.
Вывод: полная программа на Python

Пример

А вот та же проверка с помощью and:

Prompt
Напишите программу на Python, которая с помощью оператора and проверяет в одном условии, что temperature > 20 и is_sunny равно True. Выведите «Идеальная погода для пляжа!», если оба условия выполнены.
Вывод: полная программа на Python

Другие примеры

Пример

Пошаговая проверка входа в систему:

Prompt
Напишите программу на Python, которая проверяет вход в систему с помощью вложенных операторов if. Проверьте username, затем password, затем статус is_active и выведите соответствующие сообщения.
Вывод: полная программа на Python

Пример

Вычисление оценки с помощью вложенных условий:

Prompt
Напишите программу на Python, которая вычисляет оценку с помощью вложенного if вместе с elif. Проверьте, что score >= 90 и extra_credit > 0, чтобы получить оценку A+; иначе — оценку A, B или C.
Вывод: полная программа на Python