Python Glossary English

все Python 3Условный операторконструкция

Тернарный оператор

ветвление

Компактная форма if-else в одну строку. Возвращает одно из двух значений в зависимости от условия. Читается: «значение_если_истина if условие else значение_если_ложь».

Синтаксис

значение_если_истина if условие else значение_если_ложь

В отличие от обычного if, это выражение — оно возвращает значение, поэтому его можно вставить прямо туда, где оператор недопустим: в аргумент функции, в f-строку, в тело генератора. Порядок необычный (сначала результат, потом условие), а вложенные тернары ради «elif» лучше не плодить — читаемость падает быстро.

Примеры

x = 7
result = "чётное" if x % 2 == 0 else "нечётное"
print(result)  # → нечётное
a, b = 3, 9
bigger = a if a > b else b
print(bigger)  # → 9
n = -5
abs_n = n if n >= 0 else -n
print(abs_n)  # → 5
age = 20
status = "совершеннолетний" if age >= 18 else "несовершеннолетний"
print(status)  # → совершеннолетний
lst = [1, 2, 3]
print("есть" if lst else "пусто")  # → есть
name = None
print(name if name else "Гость")  # → Гость

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности