Было:
m = re.match(p1, line)
if m:
return m.group(1)
else:
m = re.match(p2, line)
if m:
return m.group(2)
else:
m = re.match(p3, line)
...
ent = obj.next_entry()
while ent:
... # process ent
ent = obj.next_entry()
В 3.8 можно будет:
if m := re.match(p1, line):
return m.group(1)
elif m := re.match(p2, line):
return m.group(2)
elif m := re.match(p3, line):
...
while ent := obj.next_entry()
... # process ent
https://lwn.net/SubscriberLink/793818/0c6f9dd271021cd4/
При Гвидо такого не было.