mirror of
https://github.com/python/cpython.git
synced 2025-12-09 18:48:05 +00:00
bpo-43755: Update docs to reflect that lambda is not allowed in comp_if since 3.9 (GH-25231)
This commit is contained in:
parent
50616223d1
commit
0fdf11e8e9
3 changed files with 8 additions and 3 deletions
|
|
@ -185,7 +185,7 @@ Common syntax elements for comprehensions are:
|
||||||
comprehension: `assignment_expression` `comp_for`
|
comprehension: `assignment_expression` `comp_for`
|
||||||
comp_for: ["async"] "for" `target_list` "in" `or_test` [`comp_iter`]
|
comp_for: ["async"] "for" `target_list` "in" `or_test` [`comp_iter`]
|
||||||
comp_iter: `comp_for` | `comp_if`
|
comp_iter: `comp_for` | `comp_if`
|
||||||
comp_if: "if" `expression_nocond` [`comp_iter`]
|
comp_if: "if" `or_test` [`comp_iter`]
|
||||||
|
|
||||||
The comprehension consists of a single expression followed by at least one
|
The comprehension consists of a single expression followed by at least one
|
||||||
:keyword:`!for` clause and zero or more :keyword:`!for` or :keyword:`!if` clauses.
|
:keyword:`!for` clause and zero or more :keyword:`!for` or :keyword:`!if` clauses.
|
||||||
|
|
@ -1707,7 +1707,6 @@ Conditional expressions
|
||||||
.. productionlist:: python-grammar
|
.. productionlist:: python-grammar
|
||||||
conditional_expression: `or_test` ["if" `or_test` "else" `expression`]
|
conditional_expression: `or_test` ["if" `or_test` "else" `expression`]
|
||||||
expression: `conditional_expression` | `lambda_expr`
|
expression: `conditional_expression` | `lambda_expr`
|
||||||
expression_nocond: `or_test` | `lambda_expr_nocond`
|
|
||||||
|
|
||||||
Conditional expressions (sometimes called a "ternary operator") have the lowest
|
Conditional expressions (sometimes called a "ternary operator") have the lowest
|
||||||
priority of all Python operations.
|
priority of all Python operations.
|
||||||
|
|
@ -1733,7 +1732,6 @@ Lambdas
|
||||||
|
|
||||||
.. productionlist:: python-grammar
|
.. productionlist:: python-grammar
|
||||||
lambda_expr: "lambda" [`parameter_list`] ":" `expression`
|
lambda_expr: "lambda" [`parameter_list`] ":" `expression`
|
||||||
lambda_expr_nocond: "lambda" [`parameter_list`] ":" `expression_nocond`
|
|
||||||
|
|
||||||
Lambda expressions (sometimes called lambda forms) are used to create anonymous
|
Lambda expressions (sometimes called lambda forms) are used to create anonymous
|
||||||
functions. The expression ``lambda parameters: expression`` yields a function
|
functions. The expression ``lambda parameters: expression`` yields a function
|
||||||
|
|
|
||||||
|
|
@ -267,6 +267,10 @@ Other Language Changes
|
||||||
:func:`~operator.countOf` of the :mod:`operator` module.
|
:func:`~operator.countOf` of the :mod:`operator` module.
|
||||||
(Contributed by Serhiy Storchaka in :issue:`40824`.)
|
(Contributed by Serhiy Storchaka in :issue:`40824`.)
|
||||||
|
|
||||||
|
* Unparenthesized lambda expressions can no longer be the expression part in an
|
||||||
|
``if`` clause in comprehensions and generator expressions. See :issue:`41848`
|
||||||
|
and :issue:`43755` for details.
|
||||||
|
|
||||||
|
|
||||||
New Modules
|
New Modules
|
||||||
===========
|
===========
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
Update documentation to reflect that unparenthesized lambda expressions can
|
||||||
|
no longer be the expression part in an ``if`` clause in comprehensions and
|
||||||
|
generator expressions since Python 3.9.
|
||||||
Loading…
Add table
Add a link
Reference in a new issue