mirror of https://github.com/python/cpython.git
#4986: augassigns are not expressions.
This commit is contained in:
parent
af9a97b245
commit
fe11f4d524
|
@ -2084,13 +2084,13 @@ left undefined.
|
||||||
object.__ixor__(self, other)
|
object.__ixor__(self, other)
|
||||||
object.__ior__(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
|
``&=``, ``^=``, ``|=``). These methods should attempt to do the operation
|
||||||
in-place (modifying *self*) and return the result (which could be, but does
|
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
|
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
|
assignment falls back to the normal methods. For instance, to execute the
|
||||||
expression ``x += y``, where *x* is an instance of a class that has an
|
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
|
: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)``
|
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``.
|
and ``y.__radd__(x)`` are considered, as with the evaluation of ``x + y``.
|
||||||
|
|
Loading…
Reference in New Issue