[Python-Dev] SyntaxError: can't assign to function call
Georg Brandl
g.brandl at gmx.net
Wed Aug 9 22:33:21 CEST 2006
Terry Reedy wrote:
> "Neal Becker" <ndbecker2 at gmail.com> wrote in message
> news:ebd2sp$nnv$1 at sea.gmane.org...
>> class X (object):
>> pass
>>
>> X() += 2
>>
>>> SyntaxError: can't assign to function call
>>
>> Suppose I actually had defined __iadd__ for class X. Python says this
>> syntax is invalid. I wish is wasn't.
>
> If you translate to x() = x() +2, with x called just once, it does not make
> sense. You can bind to names and slots in compound objects, but not to
> objects.
This is similar to
x = ([1], 2)
x[0] += [2]
which doesn't currently work either, though it could.
Georg
More information about the Python-Dev
mailing list