mirror of
https://github.com/python/cpython.git
synced 2025-12-31 04:23:37 +00:00
bpo-41706: Fix special method invocation docs to mention using type() (GH-22084)
This commit is contained in:
parent
a8dc4893d2
commit
80f33f266b
2 changed files with 6 additions and 3 deletions
|
|
@ -2439,7 +2439,7 @@ left undefined.
|
|||
(``+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`,
|
||||
:func:`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|``). For instance, to
|
||||
evaluate the expression ``x + y``, where *x* is an instance of a class that
|
||||
has an :meth:`__add__` method, ``x.__add__(y)`` is called. The
|
||||
has an :meth:`__add__` method, ``type(x).__add__(x, y)`` is called. The
|
||||
:meth:`__divmod__` method should be the equivalent to using
|
||||
:meth:`__floordiv__` and :meth:`__mod__`; it should not be related to
|
||||
:meth:`__truediv__`. Note that :meth:`__pow__` should be defined to accept
|
||||
|
|
@ -2475,8 +2475,9 @@ left undefined.
|
|||
(swapped) operands. These functions are only called if the left operand does
|
||||
not support the corresponding operation [#]_ and the operands are of different
|
||||
types. [#]_ For instance, to evaluate the expression ``x - y``, where *y* is
|
||||
an instance of a class that has an :meth:`__rsub__` method, ``y.__rsub__(x)``
|
||||
is called if ``x.__sub__(y)`` returns *NotImplemented*.
|
||||
an instance of a class that has an :meth:`__rsub__` method,
|
||||
``type(y).__rsub__(y, x)`` is called if ``type(x).__sub__(x, y)`` returns
|
||||
*NotImplemented*.
|
||||
|
||||
.. index:: builtin: pow
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,2 @@
|
|||
Fix docs about how methods like ``__add__`` are invoked when evaluating
|
||||
operator expressions.
|
||||
Loading…
Add table
Add a link
Reference in a new issue