Почему присвоение Python является выражением, а не выражением? Если бы это было выражение, которое возвращает значение правой части присваивания, в некоторых случаях это позволило бы использовать гораздо менее подробный код. Есть ли какие-то проблемы, которые я не вижу?
Например:
# lst is some sequence
# X is come class
x = X()
lst.append(x)
можно было переписать как:
lst.append(x = X())
Ну, если быть точным, вышеуказанное не сработает, потому что x
будет рассматривается как аргумент ключевого слова. Но другая пара скобок (или другой символ для аргументов ключевого слова) решила бы эту проблему.