EDIT: Mise à jour pour être vrai Python selon PEP308 :) Notez que le PEP a des informations intéressantes sur la façon dont cela devrait être entre parenthèses en fonction de la version de Python que vous utilisez. Je ne vais pas essayer de le reproduire ici - il suffit de lire le PEP!
Que diriez-vous:
-1 if x1 < x2 else (0 if x1 == x2 else 1)
(C'est sans aucune connaissance des expressions lambda Python, mais il est un moyen assez commun d'exprimer cette logique en une seule expression, que je suppose est ce que vous êtes après.)
EDIT: D'autres ont suggéré d'utiliser cmp
- J'ai supposé que le questionneur veut réellement une logique plus compliquée, comme fournir leurs propres comparaisons, mais veut la forme générale de "choisir parmi quelques conditions dans une seule expression" .
-1: passer du temps à "comprendre" lambdas. Ils sont "def" épelé drôle. –