I love assert
Rob Gaddi
rgaddi at technologyhighland.invalid
Tue Nov 11 15:20:37 EST 2014
On Tue, 11 Nov 2014 11:40:38 -0800 (PST)
Peter Cacioppi <peter.cacioppi at gmail.com> 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".
>
I tend to be a big fan, but it is easy to forget about the one big rake
assert leaves in your lawn. You CAN NOT use an assert with any
function that has a side effect or you break everything.
assert test_and_set(var)
That line there is pretty obvious about what's going on, but with the
ability to turn class data members transparently into properties, using
asserts safely actually requires a shocking amount of self-discipline.
assert obj.read_accesses < 10
--
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order. See above to fix.
More information about the Python-list
mailing list