Заметили строку в нашей кодовой базе сегодня, которая, я думаю, наверняка провалила бы сборку с синтаксической ошибкой, но тесты проходили так, видимо, это был действительно действительный python (как в версиях 2.x, так и 3).
Пробел иногда не требуется в условном выражении:
>>> 1if True else 0
1
Это не работает, если LHS является переменной:
>>> x = 1
>>> xif True else 0
File "<stdin>", line 1
xif True else 0
^
SyntaxError: invalid syntax
Но он все еще работает с другими типами литералов:
>>> {'hello'}if False else 'potato'
'potato'
Что происходит здесь, намеренно ли оно является частью грамматики по какой-то причине? Является ли эта странная причуда известным/документированным поведением?