Python Language Expression conditionnelle (ou "l'opérateur ternaire")


Exemple

L'opérateur ternaire est utilisé pour les expressions conditionnelles en ligne. Il est préférable de l'utiliser dans des opérations simples et concises, faciles à lire.

  • L'ordre des arguments est différent de beaucoup d'autres langages (tels que C, Ruby, Java, etc.), ce qui peut conduire à des bogues lorsque des personnes peu familiarisées avec le comportement "surprenant" de Python l'utilisent (elles peuvent inverser l'ordre).
  • Certains le trouvent "peu maniable", car cela va à l'encontre du flux normal de la pensée (penser d'abord à la condition et ensuite aux effets).
n = 5

"Greater than 2" if n > 2 else "Smaller than or equal to 2"
# Out: 'Greater than 2'

Le résultat de cette expression sera tel qu'il est lu en anglais - si l'expression conditionnelle est True, alors elle sera évaluée à l'expression du côté gauche, sinon du côté droit.

Les opérations de tenaire peuvent également être imbriquées, comme ici:

n = 5
"Hello" if n > 10 else "Goodbye" if n > 5 else "Good day"

Ils fournissent également une méthode pour inclure des conditions dans les fonctions lambda .