Оператор выбора
Оператор выбора выбирает и выполняет один из нескольких вариантов команд в зависимости от значения выражения. В отличие от обычного условия, он удобно описывает проверку одного выражения сразу с несколькими возможными значениями.
Сначала вычисляется выражение. Затем его результат последовательно сопоставляется с вариантами. Выполняется только одна подходящая ветвь, поэтому оператор выбора особенно удобен для обработки кодов, номеров дней недели, пунктов меню и других дискретных значений.
В языках программирования такая конструкция может называться switch, case или выбор. Общая схема: вычислить выражение, перечислить значения и команды для них, при необходимости добавить действие по умолчанию. В некоторых языках после выполненной ветви нужно явно остановить выбор командой выхода, иначе могут проверяться или выполняться следующие ветви.
В Python отдельного оператора switch нет, поэтому аналог выбора часто записывают через сопоставление с образцом:
match mark: case 5: result = "отлично" case 4: result = "хорошо" case _: result = "нужно повторить"
Если mark равно 4, выполняется только ветвь для значения 4.
Оператор выбора сравнивает одно выражение с набором значений. Составное условие объединяет несколько логических проверок с помощью И, ИЛИ или НЕ. Если варианты задаются сложными диапазонами или разными условиями, обычно используют if...else.
Что произойдёт, если значение выражения не совпало ни с одним вариантом и ветка иначе не задана?
Главное
- Оператор выбора сопоставляет значение одного выражения с несколькими вариантами.
- За один проход выполняется одна подходящая ветвь; для остальных случаев используют ветку иначе.
- Для сложных логических проверок чаще применяют условную конструкцию, а не выбор.