why is this invalid b = a += b ?
google at mrabarnett.plus.com
Sun Jan 25 00:36:55 CET 2009
Stef Mientki wrote:
> I can assign a value to more than 1 variable (name) in one line:
> a = b = 3
> So evaluation of this line must start at the right part.
> But the following is not allowed:
> b = 2
> a = b += 1
> I would think that if b has a value, and the formula is evaluated
> from right to left, there's nothing wrong with the above formula.
Assignment is a statement, not an expression. That's why:
if a = 0:
However, simple serial assignment such as:
a = b = 3
is useful enough to be supported as a special case.
More information about the Python-list