On 11/11/2014 11:40 AM, Peter Cacioppi wrote:

I get the impression that most Pythonistas aren't as habituated with assert 
statements
 as I am. Is that just a misimpression on my part? If not, is there a good 
reason to
 assert less with Python than other languages?

As far as I can tell, Python supports assert perfectly well. When run with the 
optimization
 flagging, the asserts are truly removed.

I think one needs to take care with some basic assert coding - it's not a 
substitute for
 unit tests, it doesn't absolve you of normal exception responsibilities, and, 
most of all,
 it should be used for passive inspection and not action. But given these 
guidelines, I
 still find it very useful as "active comments".

asserts are a specialized tool, easily abused.  Sounds like you are using them 
exactly as intended.

The key question to ask (if one is curious whether one is using assert correctly) is: if all the asserts are removed, and my programs gets bad data, will it keep going as if it had gotten good data? Or, will it fail at the point it should have failed, or will it fail somewhere else?

--
~Ethan~

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to