mirror of https://github.com/python/cpython
bpo-35877: Make parenthesis optional for named expression in while statement (GH-11724)
* Add parenthesis optional in named expressions for while statement * Add NEWS entry
This commit is contained in:
parent
85d83ec7c9
commit
d4fceaafb8
|
@ -72,7 +72,7 @@ assert_stmt: 'assert' test [',' test]
|
|||
compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated | async_stmt
|
||||
async_stmt: 'async' (funcdef | with_stmt | for_stmt)
|
||||
if_stmt: 'if' namedexpr_test ':' suite ('elif' namedexpr_test ':' suite)* ['else' ':' suite]
|
||||
while_stmt: 'while' test ':' suite ['else' ':' suite]
|
||||
while_stmt: 'while' namedexpr_test ':' suite ['else' ':' suite]
|
||||
for_stmt: 'for' exprlist 'in' testlist ':' [TYPE_COMMENT] suite ['else' ':' suite]
|
||||
try_stmt: ('try' ':' suite
|
||||
((except_clause ':' suite)+
|
||||
|
|
|
@ -426,6 +426,7 @@ class RoundtripLegalSyntaxTestCase(unittest.TestCase):
|
|||
self.check_suite("(a := 1)")
|
||||
self.check_suite("(a := a)")
|
||||
self.check_suite("if (match := pattern.search(data)) is None: pass")
|
||||
self.check_suite("while match := pattern.search(f.read()): pass")
|
||||
self.check_suite("[y := f(x), y**2, y**3]")
|
||||
self.check_suite("filtered_data = [y for x in data if (y := f(x)) is None]")
|
||||
self.check_suite("(y := f(x))")
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Make parenthesis optional for named expressions in while statement. Patch by
|
||||
Karthikeyan Singaravelan.
|
|
@ -971,7 +971,7 @@ static arc arcs_42_0[1] = {
|
|||
{103, 1},
|
||||
};
|
||||
static arc arcs_42_1[1] = {
|
||||
{26, 2},
|
||||
{99, 2},
|
||||
};
|
||||
static arc arcs_42_2[1] = {
|
||||
{27, 3},
|
||||
|
|
Loading…
Reference in New Issue