[Python-Dev] PEP 572 and assert
Serhiy Storchaka
storchaka at gmail.com
Tue Jul 17 04:50:55 EDT 2018
Recently Barry shown an example:
assert len(subdirs := list(path.iterdir())) == 0, subdirs
It looks awful to me. It looks even worse than using asserts for
validating the user input. The assert has a side effect, and it depends
on the interpreter option (-O). Even if subdirs is not used outside of
the assert *now*, it is easy to introduce an error later, and it is hard
to notice it if tests are not ran with the -O option regularly.
Does PEP 572 encourages writing such code, discourages this, or
completely forbids?
More information about the Python-Dev
mailing list