mirror of
https://github.com/python/cpython.git
synced 2025-12-04 00:30:19 +00:00
bpo-38605: Revert making 'from __future__ import annotations' the default (GH-25490)
This reverts commits044a1048caand1be456ae9d, adapting the code to changes that happened after it.
This commit is contained in:
parent
d35eef3b90
commit
b0544ba77c
32 changed files with 436 additions and 523 deletions
|
|
@ -1244,9 +1244,13 @@ following the parameter name. Any parameter may have an annotation, even those
|
|||
``*identifier`` or ``**identifier``. Functions may have "return" annotation of
|
||||
the form "``-> expression``" after the parameter list. These annotations can be
|
||||
any valid Python expression. The presence of annotations does not change the
|
||||
semantics of a function. The annotation values are available as string values
|
||||
in a dictionary keyed by the parameters' names in the :attr:`__annotations__`
|
||||
attribute of the function object.
|
||||
semantics of a function. The annotation values are available as values of
|
||||
a dictionary keyed by the parameters' names in the :attr:`__annotations__`
|
||||
attribute of the function object. If the ``annotations`` import from
|
||||
:mod:`__future__` is used, annotations are preserved as strings at runtime which
|
||||
enables postponed evaluation. Otherwise, they are evaluated when the function
|
||||
definition is executed. In this case annotations may be evaluated in
|
||||
a different order than they appear in the source code.
|
||||
|
||||
.. index:: pair: lambda; expression
|
||||
|
||||
|
|
|
|||
|
|
@ -877,11 +877,14 @@ can appear before a future statement are:
|
|||
* blank lines, and
|
||||
* other future statements.
|
||||
|
||||
The only feature that requires using the future statement is
|
||||
``annotations`` (see :pep:`563`).
|
||||
|
||||
All historical features enabled by the future statement are still recognized
|
||||
by Python 3. The list includes ``absolute_import``, ``division``,
|
||||
``generators``, ``generator_stop``, ``unicode_literals``,
|
||||
``print_function``, ``nested_scopes``, ``with_statement`` and ``annotations``.
|
||||
They are all redundant because they are always enabled, and only kept for
|
||||
``print_function``, ``nested_scopes`` and ``with_statement``. They are
|
||||
all redundant because they are always enabled, and only kept for
|
||||
backwards compatibility.
|
||||
|
||||
A future statement is recognized and treated specially at compile time: Changes
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue