Resumo: neste tutorial, você aprenderá sobre o operador ternário do Python e como usá-lo para tornar seu código mais conciso.
Introdução ao Operador Ternário do Python
O programa a seguir solicita sua idade e determina o preço do ingresso com base nela:
age = input('Enter your age:')
if int(age) >= 18:
ticket_price = 20
else:
ticket_price = 5
print(f"The ticket price is {ticket_price}")
Aqui está a saída quando você insere 18:
Enter your age:18
The ticket price is $20
Neste exemplo, a instrução if...else
a seguir atribui 20 a ticket_price
se age
for maior ou igual a 18. Caso contrário, atribui 5 a variavel ticket_price
:
if int(age) >= 18:
ticket_price = 20
else:
ticket_price = 5
Para torná-lo mais conciso, você pode usar uma sintaxe alternativa como esta:
ticket_price = 20 if int(age) >= 18 else 5
Nesta instrução, o lado esquerdo do operador de atribuição (=
) é a variável ticket_price
.
A expressão do lado direito retorna 20 se age
for maior ou igual 18
ou 5
caso contrário.
A seguinte sintaxe é chamada de operador ternário em Python:
value_if_true if condition else value_if_false
O operador ternário avalia condition
. Se o resultado for True
, ele retorna o value_if_true
. Caso contrário, ele retorna o value_if_false
.
O operador ternário é equivalente à seguinte declaração if...else
:
if condition:
value_if_true
else:
value_if_true
Observe que você tem programado linguagens como C# ou Java e está familiarizado com a seguinte sintaxe de operador ternário:
condition ? value_if_true : value_if_false
No entanto, o Python não oferece suporte a essa sintaxe de operador ternário.
O programa a seguir usa o operador ternário em vez da instrução if
:
age = input('Enter your age:')
ticket_price = 20 if int(age) >= 18 else 5
print(f"The ticket price is {ticket_price}")
Resumo
- O operador ternário do Python é
value_if_true if condition else value_if_false
. - Use o operador ternário para tornar seu código mais conciso.