#4986: augassigns are not expressions.

This commit is contained in:
Georg Brandl 2009-01-18 18:25:30 +00:00
parent af9a97b245
commit fe11f4d524
1 changed files with 3 additions and 3 deletions

View File

@ -2084,13 +2084,13 @@ left undefined.
object.__ixor__(self, other)
object.__ior__(self, other)
These methods are called to implement the augmented arithmetic operations
These methods are called to implement the augmented arithmetic assignments
(``+=``, ``-=``, ``*=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, ``>>=``,
``&=``, ``^=``, ``|=``). These methods should attempt to do the operation
in-place (modifying *self*) and return the result (which could be, but does
not have to be, *self*). If a specific method is not defined, the augmented
operation falls back to the normal methods. For instance, to evaluate the
expression ``x += y``, where *x* is an instance of a class that has an
assignment falls back to the normal methods. For instance, to execute the
statement ``x += y``, where *x* is an instance of a class that has an
:meth:`__iadd__` method, ``x.__iadd__(y)`` is called. If *x* is an instance
of a class that does not define a :meth:`__iadd__` method, ``x.__add__(y)``
and ``y.__radd__(x)`` are considered, as with the evaluation of ``x + y``.