[Python-Dev] PEP 572: Assignment Expressions

Antoine Pitrou solipsis at pitrou.net
Mon Apr 23 03:28:06 EDT 2018


On Mon, 23 Apr 2018 00:44:44 -0500
Tim Peters <tim.peters at gmail.com> wrote:
> 
> Which this alternative expresses directly:
> 
> if (diff := x - x_base) and (g := gcd(diff, n)) > 1:
>     return g
> 
> That's so Pythonic I could cry ;-)

It looks like C to me.  That won't make me cry (I write C++ code daily
these days), but it's certainly not the same language as Python.

The second part, especially, where you use the result of an
assignment expression as a comparison operand, looks definitely
un-Pythonic.

Regards

Antoine.




More information about the Python-Dev mailing list