mirror of https://github.com/python/cpython.git
[docs] lexical_analysis: Expand the text on ``_`` (GH-28903) (GH-28933)
Also:
* Expand the discussion into its own entry. (Even before this,
text on ``_`` was longet than the text on ``_*``.)
* Briefly note the other common convention for `_`: naming unused
variables.
Co-authored-by: Brandt Bucher <brandtbucher@gmail.com>
Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 3dee0cb621
)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
This commit is contained in:
parent
7e74d99c53
commit
5abb2dec2c
|
@ -385,10 +385,20 @@ classes are identified by the patterns of leading and trailing underscore
|
||||||
characters:
|
characters:
|
||||||
|
|
||||||
``_*``
|
``_*``
|
||||||
Not imported by ``from module import *``. The special identifier ``_`` is used
|
Not imported by ``from module import *``.
|
||||||
in the interactive interpreter to store the result of the last evaluation; it is
|
|
||||||
stored in the :mod:`builtins` module. When not in interactive mode, ``_``
|
``_``
|
||||||
has no special meaning and is not defined. See section :ref:`import`.
|
In a ``case`` pattern within a :keyword:`match` statement, ``_`` is a
|
||||||
|
:ref:`soft keyword <soft-keywords>` that denotes a
|
||||||
|
:ref:`wildcard <wildcard-patterns>`.
|
||||||
|
|
||||||
|
Separately, the interactive interpreter makes the result of the last evaluation
|
||||||
|
available in the variable ``_``.
|
||||||
|
(It is stored in the :mod:`builtins` module, alongside built-in
|
||||||
|
functions like ``print``.)
|
||||||
|
|
||||||
|
Elsewhere, ``_`` is a regular identifier. It is often used to name
|
||||||
|
"special" items, but it is not special to Python itself.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
@ -396,6 +406,8 @@ characters:
|
||||||
refer to the documentation for the :mod:`gettext` module for more
|
refer to the documentation for the :mod:`gettext` module for more
|
||||||
information on this convention.
|
information on this convention.
|
||||||
|
|
||||||
|
It is also commonly used for unused variables.
|
||||||
|
|
||||||
``__*__``
|
``__*__``
|
||||||
System-defined names, informally known as "dunder" names. These names are
|
System-defined names, informally known as "dunder" names. These names are
|
||||||
defined by the interpreter and its implementation (including the standard library).
|
defined by the interpreter and its implementation (including the standard library).
|
||||||
|
|
Loading…
Reference in New Issue