Chapter 13
Exceptions

Exceptions provide a convenient way to program error and error-recovery mechanisms, and are closely related to classes. Exception support is based on 3 constructs:
Raise 
statements. To raise an exeption. This is usually done to signal an error condition.
Try ... Except 
blocks. These block serve to catch exceptions raised within the scope of the block, and to provide exception-recovery code.
Try ... Finally 
blocks. These block serve to force code to be executed irrespective of an exception occurrence or not. They generally serve to clean up memory or close les in case an exception occurs. The compiler generates many implicit Try ... Finally blocks around procedure, to force memory consistence.

 13.1 The raise statement
 13.2 The try...except statement
 13.3 The try...nally statement
 13.4 Exception handling nesting
 13.5 Exception classes