Operador condicional ternário em Python
- Use o operador ternário em Python 2.5 e superior
- o operador ternário em Python usando tupla
-
o operador ternário usando
lambda
para versões anteriores a 2.5 em Python
Este tutorial definirá diferentes métodos para usar o operador ternário em Python. Existe uma maneira diferente de usar o operador ternário em Python em comparação com outras linguagens de programação. Existem várias maneiras de usar operadores ternários de acordo com a compatibilidade com a versão Python. O tutorial fornecerá códigos de exemplo para explicar como usar o operador ternário em diferentes versões do Python.
Use o operador ternário em Python 2.5 e superior
O operador condicional ternário foi adicionado no Python 2.5. O operador ternário é definido como o operador que recebe três operandos. Neste método, primeiro, a condição dada é avaliada, então um dos valores é avaliado e enviado de volta com base no operador booleano. Primeiro, leva a expressão e, em seguida, vem a condição novamente, seguida pela parte else
da expressão.
A sintaxe do operador ternário em Python é a seguinte.
value_if if condition else value_else
Como o operador ternário avalia primeiro a condition
, ele permite um curto-circuito e apenas uma das duas expressões será avaliada. Se condition
for verdadeira, a primeira expressão value_if
é avaliada, caso contrário, a segunda expressão value_else
é avaliada.
O código de exemplo abaixo demonstra como usar os operadores ternários em Python.
a = 2
b = 0
1 if a > b else 0
Resultado:
1
A saída do operador condicional ternário pode ser atribuída a uma variável, conforme mostrado no código de exemplo abaixo.
a = 2
b = 0
temp = a if a > b else b
print(temp)
Resultado:
2
o operador ternário em Python usando tupla
O operador ternário em Python pode ser usado usando tuplas. Leva as expressões a serem avaliadas e uma declaração condicional booleana. A expressão a ser retornada depende da condição booleana. Se a condição for verdadeira, o primeiro valor será retornado e, se a expressão for falsa, o segundo valor será retornado. No entanto, em qualquer caso, este método avaliará tudo em vez de apenas a expressão vencedora.
Um exemplo de código é fornecido abaixo para demonstrar como esse operador ternário pode ser usado em Python usando tupla.
a, b = 12, 43
temp = (a * 2, b / 2)[a < b]
print(temp)
Resultado:
21.5
o operador ternário usando lambda
para versões anteriores a 2.5 em Python
Para versões anteriores ao Python 2.5, os operadores ternários podem ser usados com lambda
. Este método leva os valores a serem retornados e uma expressão booleana. Este método segue uma técnica de avaliação preguiçosa na qual o processo de avaliação é atrasado até que seu valor seja necessário. É uma abordagem melhor do que o método da tupla neste sentido. A expressão neste método é dada como (falseValue, trueValue)[Test]()
. Se a condição de teste for avaliada como True
, o trueValue
será impresso; caso contrário, falseValue
é impresso.
Um exemplo de código é fornecido abaixo para descrever como o operador ternário pode ser usado com lambda
em Python.
val1, val2 = 12, 43
output = (lambda: val2, lambda: val1)[val1 > val2]()
print(output)
Resultado:
43
Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.
LinkedIn