[Python-Dev] chained assignment weirdity
Serhiy Storchaka
storchaka at gmail.com
Tue Nov 6 17:14:38 CET 2012
On 06.11.12 14:01, Nick Coghlan wrote:
> Python, on the other hand, is able to preserve primarily left to right
> evaluation in this case with only the far right hand expression needing
> to be evaluated out of order.
I'm surprised, but it is really so.
>>> {}[print('foo')] = print('bar')
bar
foo
I was expecting "foo" before "bar".
Another counterintuitive (and possible wrong) example:
>>> {print('foo'): print('bar')}
bar
foo
{None: None}
More information about the Python-Dev
mailing list