[3.14] gh-134026: Fix grammar description of for statement (GH-134034) (GH-134424)

gh-134026: Fix grammar description of for statement (GH-134034)
(cherry picked from commit 4eacf3883d)

Co-authored-by: Yash Vijay <yash_vijay@outlook.com>
This commit is contained in:
Miss Islington (bot) 2025-05-21 18:43:07 +02:00 committed by GitHub
parent cdc92cd9fc
commit 6ea83e077e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 8 additions and 8 deletions

View file

@ -154,15 +154,15 @@ The :keyword:`for` statement is used to iterate over the elements of a sequence
(such as a string, tuple or list) or other iterable object:
.. productionlist:: python-grammar
for_stmt: "for" `target_list` "in" `starred_list` ":" `suite`
for_stmt: "for" `target_list` "in" `starred_expression_list` ":" `suite`
: ["else" ":" `suite`]
The ``starred_list`` expression is evaluated once; it should yield an
:term:`iterable` object. An :term:`iterator` is created for that iterable.
The first item provided
by the iterator is then assigned to the target list using the standard
rules for assignments (see :ref:`assignment`), and the suite is executed. This
repeats for each item provided by the iterator. When the iterator is exhausted,
The :token:`~python-grammar:starred_expression_list` expression is evaluated
once; it should yield an :term:`iterable` object. An :term:`iterator` is
created for that iterable. The first item provided by the iterator is then
assigned to the target list using the standard rules for assignments
(see :ref:`assignment`), and the suite is executed. This repeats for each
item provided by the iterator. When the iterator is exhausted,
the suite in the :keyword:`!else` clause,
if present, is executed, and the loop terminates.

View file

@ -1928,7 +1928,7 @@ Expression lists
single: , (comma); expression list
.. productionlist:: python-grammar
starred_expression: ["*"] `or_expr`
starred_expression: "*" `or_expr` | `expression`
flexible_expression: `assignment_expression` | `starred_expression`
flexible_expression_list: `flexible_expression` ("," `flexible_expression`)* [","]
starred_expression_list: `starred_expression` ("," `starred_expression`)* [","]