oursolutionarchitectoursolutionarchitect
  • Python Questions and Answers
  • Python - Programming Examples
  • Python - Quick Guide
  • Python - Useful Resources
  • Python - Discussion
    • Selected Reading
    • Q&A

    Python - Built-in Exceptions


    Here is a list of Standard Exceptions available in Python −

    Sr.No. Exception Name & Description
    1

    Exception

    Base class for all exceptions

    2

    StopIteration

    Raised when the next() method of an iterator does not point to any object.

    3

    SystemExit

    Raised by the sys.exit() function.

    4

    StandardError

    Base class for all built-in exceptions except StopIteration and SystemExit.

    5

    ArithmeticError

    Base class for all errors that occur for numeric calculation.

    6

    OverflowError

    Raised when a calculation exceeds maximum limit for a numeric type.

    7

    FloatingPointError

    Raised when a floating point calculation fails.

    8

    ZeroDivisonError

    Raised when division or modulo by zero takes place for all numeric types.

    9

    AssertionError

    Raised in case of failure of the Assert statement.

    10

    AttributeError

    Raised in case of failure of attribute reference or assignment.

    11

    EOFError

    Raised when there is no input from either the raw_input() or input() function and the end of file is reached.

    12

    ImportError

    Raised when an import statement fails.

    13

    KeyboardInterrupt

    Raised when the user interrupts program execution, usually by pressing Ctrl+C.

    14

    LookupError

    Base class for all lookup errors.

    15

    IndexError

    Raised when an index is not found in a sequence.

    16

    KeyError

    Raised when the specified key is not found in the dictionary.

    17

    NameError

    Raised when an identifier is not found in the local or global namespace.

    18

    UnboundLocalError

    Raised when trying to access a local variable in a function or method but no value has been assigned to it.

    19

    EnvironmentError

    Base class for all exceptions that occur outside the Python environment.

    20

    IOError

    Raised when an input/ output operation fails, such as the print statement or the open() function when trying to open a file that does not exist.

    21

    OSError

    Raised for operating system-related errors.

    22

    SyntaxError

    Raised when there is an error in Python syntax.

    23

    IndentationError

    Raised when indentation is not specified properly.

    24

    SystemError

    Raised when the interpreter finds an internal problem, but when this error is encountered the Python interpreter does not exit.

    25

    SystemExit

    Raised when Python interpreter is quit by using the sys.exit() function. If not handled in the code, causes the interpreter to exit.

    26

    TypeError

    Raised when an operation or function is attempted that is invalid for the specified data type.

    27

    ValueError

    Raised when the built-in function for a data type has the valid type of arguments, but the arguments have invalid values specified.

    28

    RuntimeError

    Raised when a generated error does not fall into any category.

    29

    NotImplementedError

    Raised when an abstract method that needs to be implemented in an inherited class is not actually implemented.

    Here are some examples of standard exceptions −

    IndexError

    It is shown when trying to access item at invalid index.

    numbers=[10,20,30,40]
    for n in range(5):
       print (numbers[n])
    

    It will produce the following output

    10
    20
    30
    40
    Traceback (most recent call last):
    
       print (numbers[n])
    IndexError: list index out of range
    

    ModuleNotFoundError

    This is displayed when module could not be found.

    import notamodule
    Traceback (most recent call last):
    
       import notamodule
    ModuleNotFoundError: No module named 'notamodule'
    

    KeyError

    It occurs as dictionary key is not found.

    D1={'1':"aa", '2':"bb", '3':"cc"}
    print ( D1['4'])
    Traceback (most recent call last):
    
       D1['4']
    KeyError: '4'
    

    ImportError

    It is shown when specified function is not available for import.

    from math import cube
    Traceback (most recent call last):
    
       from math import cube
    ImportError: cannot import name 'cube'
    

    StopIteration

    This error appears when next() function is called after iterator stream exhausts.

    .it=iter([1,2,3])
    next(it)
    next(it)
    next(it)
    next(it)
    Traceback (most recent call last):
    
       next(it)
    StopIteration
    

    TypeError

    This is shown when operator or function is applied to an object of inappropriate type.

    print ('2'+2)
    Traceback (most recent call last):
    
       '2'+2
    TypeError: must be str, not int
    

    ValueError

    It is displayed when function's argument is of inappropriate type.

    print (int('xyz'))
    Traceback (most recent call last):
    
       int('xyz')
    ValueError: invalid literal for int() with base 10: 'xyz'
    

    NameError

    This is encountered when object could not be found.

    print (age)
    Traceback (most recent call last):
    
       age
    NameError: name 'age' is not defined
    

    ZeroDivisionError

    It is shown when second operator in division is zero.

    x=100/0
    Traceback (most recent call last):
    
       x=100/0
    ZeroDivisionError: division by zero
    

    KeyboardInterrupt

    When user hits the interrupt key normally Control-C during execution of program.

    name=input('enter your name')
    enter your name^c
    Traceback (most recent call last):
    
       name=input('enter your name')
    KeyboardInterrupt