mirror of
https://github.com/python/cpython.git
synced 2024-11-28 04:15:11 +08:00
Improve glossary entry for ABCs.
- Rename reST target name for collections ABCs to avoid collisions - Add link to importlib ABCs (collections, numbers and io ABCs were already linked) - Link to glossary entry from numbers module doc (other modules already do it)
This commit is contained in:
parent
07e58c3389
commit
fa088dbd0c
@ -27,12 +27,14 @@ Glossary
|
||||
:ref:`2to3-reference`.
|
||||
|
||||
abstract base class
|
||||
:ref:`abstract-base-classes` complement :term:`duck-typing` by
|
||||
Abstract base classes complement :term:`duck-typing` by
|
||||
providing a way to define interfaces when other techniques like
|
||||
:func:`hasattr` would be clumsy. Python comes with many built-in ABCs for
|
||||
:func:`hasattr` would be clumsy or subtly wrong (for example with
|
||||
:ref:`magic methods <special-lookup>`). Python comes with many built-in ABCs for
|
||||
data structures (in the :mod:`collections` module), numbers (in the
|
||||
:mod:`numbers` module), and streams (in the :mod:`io` module). You can
|
||||
create your own ABC with the :mod:`abc` module.
|
||||
:mod:`numbers` module), streams (in the :mod:`io` module), import finders
|
||||
and loaders (in the :mod:`importlib.abc` module). You can create your own
|
||||
ABCs with the :mod:`abc` module.
|
||||
|
||||
argument
|
||||
A value passed to a function or method, assigned to a named local
|
||||
@ -430,8 +432,8 @@ Glossary
|
||||
mapping
|
||||
A container object that supports arbitrary key lookups and implements the
|
||||
methods specified in the :class:`Mapping` or :class:`MutableMapping`
|
||||
:ref:`abstract base classes <abstract-base-classes>`. Examples include
|
||||
:class:`dict`, :class:`collections.defaultdict`,
|
||||
:ref:`abstract base classes <collections-abstract-base-classes>`. Examples
|
||||
include :class:`dict`, :class:`collections.defaultdict`,
|
||||
:class:`collections.OrderedDict` and :class:`collections.Counter`.
|
||||
|
||||
metaclass
|
||||
|
@ -12,7 +12,7 @@
|
||||
--------------
|
||||
|
||||
This module provides the infrastructure for defining an :term:`abstract base
|
||||
class` (ABCs) in Python, as outlined in :pep:`3119`; see the PEP for why this
|
||||
class` (ABC) in Python, as outlined in :pep:`3119`; see the PEP for why this
|
||||
was added to Python. (See also :pep:`3141` and the :mod:`numbers` module
|
||||
regarding a type hierarchy for numbers based on ABCs.)
|
||||
|
||||
|
@ -33,8 +33,9 @@ Python's general purpose built-in containers, :class:`dict`, :class:`list`,
|
||||
===================== ====================================================================
|
||||
|
||||
In addition to the concrete container classes, the collections module provides
|
||||
:ref:`abstract-base-classes` that can be used to test whether a class provides a
|
||||
particular interface, for example, whether it is hashable or a mapping.
|
||||
:ref:`abstract base classes <collections-abstract-base-classes>` that can be
|
||||
used to test whether a class provides a particular interface, for example,
|
||||
whether it is hashable or a mapping.
|
||||
|
||||
|
||||
:class:`Counter` objects
|
||||
@ -984,7 +985,7 @@ attribute.
|
||||
subclass) or an arbitrary sequence which can be converted into a string using
|
||||
the built-in :func:`str` function.
|
||||
|
||||
.. _abstract-base-classes:
|
||||
.. _collections-abstract-base-classes:
|
||||
|
||||
ABCs - abstract base classes
|
||||
----------------------------
|
||||
|
@ -5,9 +5,9 @@
|
||||
:synopsis: Numeric abstract base classes (Complex, Real, Integral, etc.).
|
||||
|
||||
|
||||
The :mod:`numbers` module (:pep:`3141`) defines a hierarchy of numeric abstract
|
||||
base classes which progressively define more operations. None of the types
|
||||
defined in this module can be instantiated.
|
||||
The :mod:`numbers` module (:pep:`3141`) defines a hierarchy of numeric
|
||||
:term:`abstract base classes <abstract base class>` which progressively define
|
||||
more operations. None of the types defined in this module can be instantiated.
|
||||
|
||||
|
||||
.. class:: Number
|
||||
|
Loading…
Reference in New Issue
Block a user