How to pop the interpreter's stack?
Terry Reedy
tjreedy at udel.edu
Fri Dec 17 02:22:31 EST 2010
On 12/16/2010 7:33 PM, Steven D'Aprano wrote:
> Python's exception system has to handle two different situations: buggy
> code, and bad data. It's not even clear whether there is a general
> distinction to be made between the two, but even if there's not a general
> distinction, there's certainly a distinction which we can *sometimes*
> make.
The two are intertwined. Production code that passes bad data to a
function without catching the exception is buggy.
> def func(x):
> if !(x<= 10):
> if x%2 != 0:
> pass
> else:
> raise ValueError('bad value for x')
> return
>
> I would have got the same traceback,
A traceback is printed only if the code passes bad data and does not
catch the exception. Tracebacks are for developers, not for users.
--
Terry Jan Reedy
More information about the Python-list
mailing list