[Python-Dev] PEP 572: Assignment Expressions

Ivan Levkivskyi levkivskyi at gmail.com
Tue Apr 24 03:27:13 EDT 2018


On 24 April 2018 at 08:12, Greg Ewing <greg.ewing at canterbury.ac.nz> wrote:

> Chris Jerdonek wrote:
>
> if (diff := x - x_base) and (g := gcd(diff, n)) > 1:
>>>>
>>>
> "if diff, which we let equal x - x_base, and g, which ..." or
>> "if diff, which we set equal to x - x_base, and g, which ...." or
>> "if diff, which we define to be x - x_base, and g, which ...." or
>> "if diff, which we define as x - x_base, and g, which ....." etc.
>>
>
> How about "being" as a keyword:
>
>   if (diff being x - x_base) and (g being gcd(diff, n)) > 1:
>     return g
>
> An advantage is that you're not likely to be tempted to write
>
>    diff being x - x_base
>
> on its own as a statement.
>
>
I like this term, but I don't like having more reserved words. Or PEP can
make it an official way to read :=

(z := x + y) is _called_ a binding expression.
(z := x + y) _reads_ as "z being x + y"

--
Ivan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20180424/190ef6d9/attachment.html>


More information about the Python-Dev mailing list