From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Thu, 6 Oct 2022 19:33:23 +0000 (-0700) Subject: gh-86482: Document assignment expression need for ()s (GH-23291) X-Git-Tag: v3.10.8~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b7487dff302767bd2aed92df04d440f15c2eca14;p=thirdparty%2FPython%2Fcpython.git gh-86482: Document assignment expression need for ()s (GH-23291) Co-authored-by: Jelle Zijlstra (cherry picked from commit 2b5f1360ead9aa72ae00de59edfd6c229d13933f) Co-authored-by: Terry Jan Reedy --- diff --git a/Doc/reference/expressions.rst b/Doc/reference/expressions.rst index 0a9e7141d397..1e76b25f4880 100644 --- a/Doc/reference/expressions.rst +++ b/Doc/reference/expressions.rst @@ -1748,6 +1748,13 @@ Or, when processing a file stream in chunks: while chunk := file.read(9000): process(chunk) +Assignment expressions must be surrounded by parentheses when used +as sub-expressions in slicing, conditional, lambda, +keyword-argument, and comprehension-if expressions +and in ``assert`` and ``with`` statements. +In all other places where they can be used, parentheses are not required, +including in ``if`` and ``while`` statements. + .. versionadded:: 3.8 See :pep:`572` for more details about assignment expressions. diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst b/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst new file mode 100644 index 000000000000..ea997800bf07 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst @@ -0,0 +1 @@ +Document some places where an assignment expression needs parentheses.