Rapidinha do dia (1): Operador ternário em Python

Postado por Rafael Sierra em 16/05/2007

Após muito tempo de depressão com o fato de Python não ter operador ternário, finalmente descobri uma forma de fazer isso:

[python]
condicao = True
valor = condicao and "Verdadeiro" or "Falso"
[/python]

Se não me engano já implementaram isso na versão 2.5 do Python de forma explicita, mas eu achei essa forma tão <emo>bunitin</emo> que prefiro usar ela por padrão :D

2 Comentário para “Rapidinha do dia (1): Operador ternário em Python”

  1. Yoshio disse em 16/05/2007 as 00:02

    Funciona mas parece n fazer sentido, ex:
    “”" (10 é maior que 5) e (’verdade’) ou (’falso’) “”"

  2. Thiago F Pappacena disse em 16/05/2007 as 16:35

    Funciona, mas não é 100%.

    Costumo usar este artifício, mas ele pode ser uma armadilha terrível:

    >>> condicao = True
    >>> condicao and 0 or 10
    10

    10 não é o que você esperava, não é? ;)

    Zero (ou qualquer outra coisa que avalie para ‘False’) depois do ‘and’ vai dar creca com essa gambiarrinha. :P

Trackback URI | RSS dos comentários

Deixe um comentário

Av. Conselheiro Nébias, 368A, Cj. 413
Vila Mathias - Santos - SP
Telefone: (13) 3345-4580

© 2008 - 2009 Stiod. Todos os direitos reservados.