Commit 9b10e1fb authored by Barry Warsaw's avatar Barry Warsaw

A few documentation improvements, spurred on by Brett's review.

parent 90ca5c2a
...@@ -619,12 +619,13 @@ always available. ...@@ -619,12 +619,13 @@ always available.
.. data:: implementation .. data:: implementation
An object containing the information about the implementation of the An object containing information about the implementation of the
currently running Python interpreter. Its attributes are the those currently running Python interpreter. The following attributes are
that all Python implementations must implement. They are described required to exist in all Python implementations.
below.
*name* is the implementation's identifier, like ``'cpython'``. *name* is the implementation's identifier, e.g. ``'cpython'``. The actual
string is defined by the Python implementation, but it is guaranteed to be
lower case.
*version* is a named tuple, in the same format as *version* is a named tuple, in the same format as
:data:`sys.version_info`. It represents the version of the Python :data:`sys.version_info`. It represents the version of the Python
...@@ -633,7 +634,7 @@ always available. ...@@ -633,7 +634,7 @@ always available.
interpreter conforms, which ``sys.version_info`` represents. For interpreter conforms, which ``sys.version_info`` represents. For
example, for PyPy 1.8 ``sys.implementation.version`` might be example, for PyPy 1.8 ``sys.implementation.version`` might be
``sys.version_info(1, 8, 0, 'final', 0)``, whereas ``sys.version_info`` ``sys.version_info(1, 8, 0, 'final', 0)``, whereas ``sys.version_info``
would be ``sys.version_info(1, 8, 0, 'final', 0)``. For CPython they would be ``sys.version_info(2, 7, 2, 'final', 0)``. For CPython they
are the same value, since it is the reference implementation. are the same value, since it is the reference implementation.
*hexversion* is the implementation version in hexadecimal format, like *hexversion* is the implementation version in hexadecimal format, like
...@@ -646,10 +647,12 @@ always available. ...@@ -646,10 +647,12 @@ always available.
``cache_tag`` is set to ``None``, it indicates that module caching should ``cache_tag`` is set to ``None``, it indicates that module caching should
be disabled. be disabled.
Regardless of its contents, :data:`sys.implementation` will not :data:`sys.implementation` may contain additional attributes specific to
change during a run of the interpreter, nor between implementation the Python implementation. These non-standard attributes must start with
versions. (It may change between Python language versions, an underscore, and are not described here. Regardless of its contents,
however.) See `PEP 421` for more information. :data:`sys.implementation` will not change during a run of the interpreter,
nor between implementation versions. (It may change between Python
language versions, however.) See `PEP 421` for more information.
.. versionadded:: 3.3 .. versionadded:: 3.3
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment