python built-in exceptions data fusion albert esterline source:

16

Click here to load reader

Upload: melina-mckinney

Post on 18-Jan-2018

230 views

Category:

Documents


0 download

DESCRIPTION

+-- StandardError (cont.) | +-- EOFError | +-- ImportError | +-- LookupError | | +-- IndexError | | +-- KeyError | +-- MemoryError | +-- NameError | | +-- UnboundLocalError | +-- ReferenceError | +-- RuntimeError | | +-- NotImplementedError | +-- SyntaxError | | +-- IndentationError | | +-- TabError | +-- SystemError | +-- TypeError | +-- ValueError | +-- UnicodeError | +-- UnicodeDecodeError | +-- UnicodeEncodeError | +-- UnicodeTranslateError

TRANSCRIPT

Page 1: Python Built-in Exceptions Data Fusion Albert Esterline Source:

Python Built-in Exceptions

Data FusionAlbert Esterline

Source: http://docs.python.org/library/exceptions.html

For the exception hierarchy, see the bottom of the page, accessible directly at

http://docs.python.org/library/exceptions.html#exception-hierarchy

Page 2: Python Built-in Exceptions Data Fusion Albert Esterline Source:

The class hierarchy for built-in exceptions (See module exceptions)BaseException +-- SystemExit +-- KeyboardInterrupt +-- GeneratorExit +-- Exception +-- StopIteration +-- StandardError | +-- BufferError | +-- ArithmeticError | | +-- FloatingPointError | | +-- OverflowError | | +-- ZeroDivisionError | +-- AssertionError | +-- AttributeError | +-- EnvironmentError | | +-- IOError | | +-- OSError | | +-- WindowsError (Windows) | | +-- VMSError (VMS)

Page 3: Python Built-in Exceptions Data Fusion Albert Esterline Source:

+-- StandardError (cont.) | +-- EOFError | +-- ImportError | +-- LookupError | | +-- IndexError | | +-- KeyError | +-- MemoryError | +-- NameError | | +-- UnboundLocalError | +-- ReferenceError | +-- RuntimeError | | +-- NotImplementedError | +-- SyntaxError | | +-- IndentationError | | +-- TabError | +-- SystemError | +-- TypeError | +-- ValueError | +-- UnicodeError | +-- UnicodeDecodeError | +-- UnicodeEncodeError | +-- UnicodeTranslateError

Page 4: Python Built-in Exceptions Data Fusion Albert Esterline Source:

+-- Exception (cont.) +-- Warning +-- DeprecationWarning +-- PendingDeprecationWarning +-- RuntimeWarning +-- SyntaxWarning +-- UserWarning +-- FutureWarning

+-- ImportWarning +-- UnicodeWarning +-- BytesWarning

Page 5: Python Built-in Exceptions Data Fusion Albert Esterline Source:

Exceptions used only as base classes for other exceptionsBaseException Base class for all built-in exceptions Not meant to be directly inherited by user-defined classes

Exception All built-in, non-system-exiting exceptions are derived from this class All user-defined exceptions should also be derived from this class

StandardError Base class for all built-in exceptions except StopIteration,

GeneratorExit, KeyboardInterrupt and SystemExit Derived from Exception

ArithmeticError Base class for built-in exceptions raised for arithmetic errors

Page 6: Python Built-in Exceptions Data Fusion Albert Esterline Source:

LookupError Base class for exceptions raised when a key or index used on a

dictionary or sequence is invalid

EnvironmentError Base class for exceptions that can occur outside the Python system:

IOError, OSError

When these exceptions are created with a 2-tuple, 1st item is available on the instance’s errno attribute (assumed to be

an error number), and 2nd is available on the strerror attribute (usually the associated

error message) The tuple itself is also available on the args attribute

When such an exception is instantiated with a 3-tuple, 1st 2 items are available as above 3rd is available on the filename attribute

Page 7: Python Built-in Exceptions Data Fusion Albert Esterline Source:

Exceptions that are those actually raisedAssertionError Raised when an assert statement fails.

AttributeError Raised when an attribute reference or assignment fails When an object doesn’t support attribute references or attribute

assignments, TypeError is raised

EOFError Raised when built-in function input() or raw_input() hits an EOF

without reading any data Methods file.read() and file.readline() return an empty

string when they hit EOF

FloatingPointError Raised when a floating point operation fails

Page 8: Python Built-in Exceptions Data Fusion Albert Esterline Source:

GeneratorExit Raise when a generator‘s close() method is called Directly inherits from BaseException instead of StandardError since it’s

technically not an error

IOError Raised when an I/O operation fails for an I/O-related reason Derived from EnvironmentError

ImportError Raised when an import statement fails to find the module definition or

when a from ... import fails to find a name to be imported

IndexError Raised when a sequence subscript is out of range

KeyError Raised when a dictionary key isn’t found

Page 9: Python Built-in Exceptions Data Fusion Albert Esterline Source:

KeyboardInterrupt Raised when user hits the interrupt key (normally Control-C or Delete) Inherits from BaseException, so not accidentally caught by code that

catches Exception

MemoryError Raised when an operation runs out of memory but the situation may still be

rescued (by deleting some objects) Associated value is a string indicating what kind of (internal) operation ran

out of memory

NameError Raised when a local or global name isn’t found Associated value is a message that includes the name not found

NotImplementedError Derived from RuntimeError In user defined base classes, abstract methods should raise this when they

require derived classes to override the method

Page 10: Python Built-in Exceptions Data Fusion Albert Esterline Source:

OSError Derived from EnvironmentError Raised when a function returns a system-related error The errno attribute is a numeric error code The strerror attribute is the corresponding string For exceptions involving a file system path (e.g., chdir()), the instance

contains a 3rd attribute: filename, the file name passed to the function

OverflowError Raised when the result of an arithmetic operation is too large

RuntimeError Raised when an error doesn’t fall in any other category Associated value is a string indicating the precisely problem Mostly a relic

Page 11: Python Built-in Exceptions Data Fusion Albert Esterline Source:

StopIteration Raised by an iterator‘s next() method to signal no further values Derived from Exception rather than StandardError: not really an error

SyntaxError Raised when the parser encounters a syntax error May occur

in an import statement, in an exec statement, in a call to the built-in function eval() or input(), or when reading the initial script or standard input (also interactively)

Instances have attributes filename, lineno, offset, and text

SystemError Raised when the interpreter finds an internal error, but there’s still hope Associated value is a string indicating what went wrong (in low-level terms). Report this to the maintainer of your Python interpreter

Page 12: Python Built-in Exceptions Data Fusion Albert Esterline Source:

SystemExit Raised by the sys.exit() function If the associated value is a plain integer, it specifies the system exit status

(passed to C’s exit() function) If it’s None, exit status is 0 If it has another type (e.g., a string), the object’s value is printed and

the exit status is 1 A call to sys.exit() is translated into an exception so that

finally clauses can be executed, and a debugger can execute a script without losing control

Inherits from BaseException instead of StandardError or Exception so it isn’t accidentally caught by code catching Exception

Page 13: Python Built-in Exceptions Data Fusion Albert Esterline Source:

TypeError Raised when an operation/function applied to an object of inappropriate type Associated value is a string giving details about the type mismatch

UnboundLocalError Raised when a reference is made to a local variable in a function or method,

but no value bound to that variable Subclass of NameError

UnicodeError Raised when a Unicode-related encoding or decoding error occurs Subclass of ValueError

UnicodeEncodeError Raised when a Unicode-related error occurs during encoding Subclass of UnicodeError

UnicodeDecodeError Raised when a Unicode-related error occurs during decoding Subclass of UnicodeError

Page 14: Python Built-in Exceptions Data Fusion Albert Esterline Source:

UnicodeTranslateError Raised when a Unicode-related error occurs during translating Subclass of UnicodeError

ValueError Raised when a built-in operation or function receives an argument that

has the right type but an inappropriate value

WindowsError Raised when a Windows-specific error occurs or when the error number

doesn’tt correspond to an errno value Subclass of OSError

ZeroDivisionError Raised when the 2nd argument of a division or modulo operation is 0 Associated value is a string indicating the type of the operands and the

operation

Page 15: Python Built-in Exceptions Data Fusion Albert Esterline Source:

Exceptions used as warning categoriesWarning Base class for warning categories

UserWarning Base class for warnings generated by user code

DeprecationWarning Base class for warnings about deprecated features

PendingDeprecationWarning Base class for warnings about features to be deprecated in the future

SyntaxWarning Base class for warnings about dubious syntax

Page 16: Python Built-in Exceptions Data Fusion Albert Esterline Source:

RuntimeWarning Base class for warnings about dubious runtime behavior

FutureWarning Base class for warnings about constructs that will change semantically

in the future

ImportWarning Base class for warnings about probable mistakes in module imports

UnicodeWarning Base class for warnings related to Unicode