On Sun, Apr 22, 2018 at 3:13 PM, Steve Dower <steve.do...@python.org> wrote:

> This example makes me want “if expr as name:” (same semantics as ‘with’,
> and the name is always bound to the expression result regardless of
> truthiness), but doesn’t move me on assignment expressions.
>

In reality there often are other conditions being applied to the match for
which `if expr as name` is inadequate. The simplest would be something like

  if ...:
      <something>
  elif (m := re.match('(.*):(.*)', line)) and m.group(1) == m.group(2):
    <whatever>

And the match() call may not even be the first thing to check -- e.g. we
could have

    elif line is not None and (m := re.match('(.*):(.*)', line)) and
m.group(1) == m.group(2):

-- 
--Guido van Rossum (python.org/~guido)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to