|Python Language Reference Manual|
by Guido van Rossum and Fred L. Drake, Jr.
Paperback (6"x9"), 120 pages
RRP £12.95 ($19.95)
Sales of this book support the Python Software Foundation! Get a printed copy>>>
Exceptions are a means of breaking out of the normal flow of control of a code block in order to handle errors or other exceptional conditions. An exception is raised at the point where the error is detected; it may be handled by the surrounding code block or by any code block that directly or indirectly invoked the code block where the error occurred.
The Python interpreter raises an exception when it detects a run-time
error (such as division by zero). A Python program can also
explicitly raise an exception with the
Exception handlers are specified with the
specifies cleanup code which does not handle the exception, but is
executed whether an exception occurred or not in the preceding code.
Python uses the "termination" model of error handling: an exception handler can find out what happened and continue execution at an outer level, but it cannot repair the cause of the error and retry the failing operation (except by re-entering the offending piece of code from the top).
When an exception is not handled at all, the interpreter terminates
execution of the program, or returns to its interactive main loop. In
either case, it prints a stack backtrace, except when the exception is
Exceptions are identified by class instances. The
clause is selected depending on the class of the instance: it must
reference the class of the instance or a base class thereof. The
instance can be received by the handler and can carry additional
information about the exceptional condition.
Exceptions can also be identified by strings, in which case the
except clause is selected by object identity. An arbitrary
value can be raised along with the identifying string which can be
passed to the handler.
This is deprecated in Python 2.5. String exceptions should not be used in new code. They will not be supported in a future version of Python. Old code should be rewritten to use class exceptions instead.
Notice: [warning] Messages to exceptions are not part of the Python API. Their contents may change from one version of Python to the next without warning and should not be relied on by code which will run under multiple versions of the interpreter.
|ISBN 0954161785||Python Language Reference Manual||See the print edition|