On 2018-05-11 11:08, Brendan Barnwell wrote:
. . . and it's true the latter is a bit more verbose in that case for
little extra benefit.  But when the locally-defined value is used within
a more complicated expression (like the quadratic formula example), I
think readability goes down significantly.  To appease Tim, instead of
using the quadratic formula, though, I will use a more realistic example
that comes up fairly often for me: wanting to do some kind of
normalization on a piece of data for a comparison, while keeping the
unnormalized data for use within the block:

        if some_condition and (stuff:=
get_user_input()).lower().strip().replace('-', ''):

versus

        if some_condition and stuff.lower().strip().replace('-', '') given
stuff = get_user_input():

Ironically I weakened my argument by forgetting to finish my expression there. I intended that chain of method calls to be used in a comparison to make the surrounding expression more complex. So revise the above to

if some_condition and (stuff := get_user_input()).lower().strip().replace('-', '') == existing_value:

versus

if some_condition and stuff.lower().strip().replace('-', '') == existing_value given stuff = get_user_input():

--
Brendan Barnwell
"Do not follow where the path may lead. Go, instead, where there is no path, and leave a trail."
   --author unknown
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to