On 7/8/2018 5:41 AM, Giampaolo Rodola' wrote:
As for "assert" what I'm concern about is the proliferation of things
like this:
class Foo:
def __init__(self):
assert self.x := fun1()
assert self.y := fun2()
assert self.z := fun3()
When I look at that my brain tells me that the main subject of the line
is "assert", not the assignment, but maybe it's just because I'm not
used to it. That aside there's the question of what to do when "python
-O" switch is used. With this in place "-O" would acquire a new meaning,
as it would disable "assert" statements AND assignments.
It has always meant "disable the assert statement and therefore any side
effects the expression has". It's just that now the side effects are
more obvious, or maybe easier to create. Even pre-572 I've been bitten
by this, I'm ashamed to admit.
Eric
_______________________________________________
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