Тернарный оператор в Python
avatar
7 | (offline)
❤️‍🔥Notehunter Developer
Добавлено:
Категория: Основы «Python»
Комментариев: 0

Тернарный оператор - это условный оператор в Python, он может оценивать утверждение, если условие истинно или ложно. 

Что такое и зачем нужен тернарный оператор в Python?

  • Тернарный оператор был представлен в Python 2.5.
  • При правильном использовании тернарный оператор может уменьшить размер кода и улучшить его читаемость.
  • Для этого оператора нет специального ключевого слова, это способ написания оператора if else, который создает тернарный оператор или условное выражение.

Синтаксис 

Тернарный оператор в Python написан с простым синтаксисом с использованием оператора if else.

[Если истина] if [Условие] else [Если ложно]

Мы можем думать о тернарных операторах как о понимании списка, используемом в языке программирования Python для фильтрации списка. Или мы можем думать об этом как о лямбда-функции, используемой для определения функции.

И лямбда-функции, и списки понимания являются более эффективными методами выполнения любого действия (например, определения функции и фильтрации списка соответственно). Точно так же тернарный оператор оказывается более эффективным и действенным способом написания оператора if-else.

Теперь давайте рассмотрим пример, основанный на тернарном операторе в Python.

Предположим, мы хотим включить опцию скидки в приложении для бронирования мероприятий для клиентов в возрасте 60 лет и старше. Если покупателю меньше 60 лет, он не имеет права на скидку. Мы можем проверить, имеет ли клиент право на скидку, используя приведенный ниже фрагмент кода.

# Возраст клиента
current_age = 40

# Использование тернарного оператора
cust_discount = 'Право на скидку' if current_age >= 60 else 'Нет права на скидку'

# Вывод результата
print(cust_discount)

Результат:

>>> Нет права на скидку

Пояснения:

В приведенном выше фрагменте кода мы определили переменную, которая содержит значение возраста клиента. Затем мы использовали тернарный оператор, чтобы проверить, имеет ли указанный возраст клиента право на скидку, и распечатали результат для пользователей. Поскольку значение было равно 40, что меньше 60, программа возвращала пользователям оператор else.

Если бы мы использовали условия без тернарного оператора, то конструкция выглядела бы следующим образом:

# Возраст клиента
current_age = 40

# Обычное условие
if current_age >= 60:
    cust_discount = 'Право на скидку'
else:
    cust_discount = 'Нет права на скидку'

# Вывод результата
print(cust_discount)

Как видите, код с тернарным оператором намного меньше!

Комментарии к статье 0
Комментариев нет
Форма добавления комментария (необходима регистрация)