Remarqué dans notre base de code aujourd'hui, j'ai pensé que sûrement aurais pas pu le construire avec erreur de syntaxe, mais les tests étaient de passage donc, apparemment, il était en fait python valide (dans les deux 2.x et 3).
Les espaces sont parfois pas nécessaire dans l'expression conditionnelle:
>>> 1if True else 0
1
Il ne fonctionne pas si le membre de GAUCHE est une variable:
>>> x = 1
>>> xif True else 0
File "<stdin>", line 1
xif True else 0
^
SyntaxError: invalid syntax
Mais il ne semble pas encore fonctionner avec d'autres types de littéraux:
>>> {'hello'}if False else 'potato'
'potato'
Ce qui se passe ici, c'est intentionnellement une partie de la grammaire pour une raison quelconque? Est-ce étrange caprice connu/comportement documenté?