multiple assignments (was: My first Python program)

Ethan Furman ethan at
Wed Oct 13 23:53:01 CEST 2010

Ian Kelly wrote:
>  here is an example
> where the order of assignment actually matters:
>  >>> d['a'] = d = {}
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> NameError: name 'd' is not defined
>  >>> d = d['a'] = {}
>  >>> d
> {'a': {...}}
> As you can see, they're assigned left-to-right.

<Flash of inspiration>

Ah!  I was thinking the assignments went in a filter fashion, but now 
what I think is happening is that the first item is bound to the last, 
then the next item is bound to the last, etc, etc.

Is this correct?


More information about the Python-list mailing list