Тернарный оператор в Python
Иногда простое «если — то — иначе» удобно записать в одну строку. Для этого есть тернарный оператор.
Как выглядит
Тернарный оператор выбирает одно из двух значений по условию и пишется в порядке «значение_если_да if условие else значение_если_нет». Читается почти как английская фраза.
age = 20
status = 'взрослый' if age >= 18 else 'ребёнок'
print(status) # взрослый
Когда удобно
Он хорош для коротких присваиваний по условию: выбрать одно из двух значений, вывести разный текст. Строка короче, чем полноценный if/else из четырёх строк, и смысл виден сразу.
Когда не стоит
Если веток больше двух или в каждой ветке несколько действий — тернарник запутает. Тогда лучше обычный if/else: читаемость важнее краткости. Не гонитесь за «покороче» в ущерб понятности.
Частые вопросы
Чем тернарник отличается от обычного if? Он возвращает значение и пишется в строку; обычный if выполняет действия.
Можно ли вкладывать тернарники? Технически да, но читается плохо — лучше обычный if/elif.
Начать игру бесплатно