mirror of https://github.com/python/cpython.git
gh-101100: Fix Sphinx nitpicks in `library/numbers.rst` (#113162)
This commit is contained in:
parent
e365c943f2
commit
c2c4879b0a
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
The :mod:`numbers` module (:pep:`3141`) defines a hierarchy of numeric
|
The :mod:`!numbers` module (:pep:`3141`) defines a hierarchy of numeric
|
||||||
:term:`abstract base classes <abstract base class>` which progressively define
|
:term:`abstract base classes <abstract base class>` which progressively define
|
||||||
more operations. None of the types defined in this module are intended to be instantiated.
|
more operations. None of the types defined in this module are intended to be instantiated.
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ The numeric tower
|
||||||
|
|
||||||
.. class:: Real
|
.. class:: Real
|
||||||
|
|
||||||
To :class:`Complex`, :class:`Real` adds the operations that work on real
|
To :class:`Complex`, :class:`!Real` adds the operations that work on real
|
||||||
numbers.
|
numbers.
|
||||||
|
|
||||||
In short, those are: a conversion to :class:`float`, :func:`math.trunc`,
|
In short, those are: a conversion to :class:`float`, :func:`math.trunc`,
|
||||||
|
@ -126,7 +126,8 @@ We want to implement the arithmetic operations so that mixed-mode
|
||||||
operations either call an implementation whose author knew about the
|
operations either call an implementation whose author knew about the
|
||||||
types of both arguments, or convert both to the nearest built in type
|
types of both arguments, or convert both to the nearest built in type
|
||||||
and do the operation there. For subtypes of :class:`Integral`, this
|
and do the operation there. For subtypes of :class:`Integral`, this
|
||||||
means that :meth:`__add__` and :meth:`__radd__` should be defined as::
|
means that :meth:`~object.__add__` and :meth:`~object.__radd__` should be
|
||||||
|
defined as::
|
||||||
|
|
||||||
class MyIntegral(Integral):
|
class MyIntegral(Integral):
|
||||||
|
|
||||||
|
@ -160,15 +161,15 @@ refer to ``MyIntegral`` and ``OtherTypeIKnowAbout`` as
|
||||||
of :class:`Complex` (``a : A <: Complex``), and ``b : B <:
|
of :class:`Complex` (``a : A <: Complex``), and ``b : B <:
|
||||||
Complex``. I'll consider ``a + b``:
|
Complex``. I'll consider ``a + b``:
|
||||||
|
|
||||||
1. If ``A`` defines an :meth:`__add__` which accepts ``b``, all is
|
1. If ``A`` defines an :meth:`~object.__add__` which accepts ``b``, all is
|
||||||
well.
|
well.
|
||||||
2. If ``A`` falls back to the boilerplate code, and it were to
|
2. If ``A`` falls back to the boilerplate code, and it were to
|
||||||
return a value from :meth:`__add__`, we'd miss the possibility
|
return a value from :meth:`~object.__add__`, we'd miss the possibility
|
||||||
that ``B`` defines a more intelligent :meth:`__radd__`, so the
|
that ``B`` defines a more intelligent :meth:`~object.__radd__`, so the
|
||||||
boilerplate should return :const:`NotImplemented` from
|
boilerplate should return :const:`NotImplemented` from
|
||||||
:meth:`__add__`. (Or ``A`` may not implement :meth:`__add__` at
|
:meth:`!__add__`. (Or ``A`` may not implement :meth:`!__add__` at
|
||||||
all.)
|
all.)
|
||||||
3. Then ``B``'s :meth:`__radd__` gets a chance. If it accepts
|
3. Then ``B``'s :meth:`~object.__radd__` gets a chance. If it accepts
|
||||||
``a``, all is well.
|
``a``, all is well.
|
||||||
4. If it falls back to the boilerplate, there are no more possible
|
4. If it falls back to the boilerplate, there are no more possible
|
||||||
methods to try, so this is where the default implementation
|
methods to try, so this is where the default implementation
|
||||||
|
@ -180,7 +181,7 @@ Complex``. I'll consider ``a + b``:
|
||||||
|
|
||||||
If ``A <: Complex`` and ``B <: Real`` without sharing any other knowledge,
|
If ``A <: Complex`` and ``B <: Real`` without sharing any other knowledge,
|
||||||
then the appropriate shared operation is the one involving the built
|
then the appropriate shared operation is the one involving the built
|
||||||
in :class:`complex`, and both :meth:`__radd__` s land there, so ``a+b
|
in :class:`complex`, and both :meth:`~object.__radd__` s land there, so ``a+b
|
||||||
== b+a``.
|
== b+a``.
|
||||||
|
|
||||||
Because most of the operations on any given type will be very similar,
|
Because most of the operations on any given type will be very similar,
|
||||||
|
|
|
@ -65,7 +65,6 @@ Doc/library/lzma.rst
|
||||||
Doc/library/mmap.rst
|
Doc/library/mmap.rst
|
||||||
Doc/library/multiprocessing.rst
|
Doc/library/multiprocessing.rst
|
||||||
Doc/library/multiprocessing.shared_memory.rst
|
Doc/library/multiprocessing.shared_memory.rst
|
||||||
Doc/library/numbers.rst
|
|
||||||
Doc/library/optparse.rst
|
Doc/library/optparse.rst
|
||||||
Doc/library/os.rst
|
Doc/library/os.rst
|
||||||
Doc/library/pickle.rst
|
Doc/library/pickle.rst
|
||||||
|
|
Loading…
Reference in New Issue