Python Exception

Python Programming Training Certification

Flexible Hours

100 Assignments

Instructor Led online Training

50 LMS Access

24X7 Support

100% Skill Level

Enquire Now

4.9 out of 1000+ Ratings
Best Python Institute for Learning Python Course & Training, Live Project Training in Python with Django, Data Science and AI, Interview Assistance, Expert Coaching Trainers. Python Certification & Interview Assistance! Get free demo now!

Course Overview

Python is one of the world’s top programming languages used today and Python training has become the most popular training across individuals. Training Basket’s Python Training & Certification course covers basic and advanced Python concepts and how to apply them in real-world applications.Python is a flexible and powerful open-source language that is easy to learn and consists of powerful libraries for data analysis and manipulation. Our Python training course content is curated by experts as per the standard Industry curriculum. The curriculum, coding challenges and real-life problems cover data operations in Python, strings, conditional statements, error handling, shell scripting, web scraping and the commonly used Python web framework Django. Take this Python training and certification course and become job-ready now.

Python Exception

Python Exception

An exception can be defined as an unusual condition in a program resulting in the interruption in the flow of the program.

Whenever an exception occurs, the program stops the execution, and thus the further code is not executed. Therefore, an exception is the run-time errors that are unable to handle to Python script. An exception is a Python object that represents an error

Python provides a way to handle the exception so that the code can be executed without any interruption. If we do not handle the exception, the interpreter doesn’t execute all the code that exists after the exception.

Python has many built-in exceptions that enable our program to run without interruption and give the output. These exceptions are given below:

Common Exceptions

Python provides the number of built-in exceptions, but here we are describing the common standard exceptions. A list of common exceptions that can be thrown from a standard Python program is given below.

  1. ZeroDivisionError: Occurs when a number is divided by zero.
  2. NameError: It occurs when a name is not found. It may be local or global.
  3. IndentationError: If incorrect indentation is given.
  4. IOError: It occurs when Input Output operation fails.
  5. EOFError: It occurs when the end of the file is reached, and yet operations are being performed.

The problem without handling exceptions

As we have already discussed, the exception is an abnormal condition that halts the execution of the program.

Suppose we have two variables a and b, which take the input from the user and perform the division of these values. What if the user entered the zero as the denominator? It will interrupt the program execution and through a ZeroDivision exception. Let’s see the following example.

Example

  • a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    c = a/b
    print(“a/b = %d” %c)

    #other code:
    print(“Hi I am other part of the program”)

Output:

  • Enter a:10
    Enter b:0
    Traceback (most recent call last):
    File “exception-test.py”, line 3, in <module>
    c = a/b;
    ZeroDivisionError: division by zero

The above program is syntactically correct, but it through the error because of unusual input. That kind of programming may not be suitable or recommended for the projects because these projects are required uninterrupted execution. That’s why an exception-handling plays an essential role in handling these unexpected exceptions. We can handle these exceptions in the following way.

Exception handling in python

The try-expect statement

If the Python program contains suspicious code that may throw the exception, we must place that code in the try block. The try block must be followed with the except statement, which contains a block of code that will be executed if there is some exception in the try block.

Python Exception handling

Syntax

  • try:
    #block of code

    except Exception1:
    #block of code

    except Exception2:
    #block of code

    #other code

Consider the following example.

Example 1

  • try:
    a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    c = a/b
    except:
    print(“Can’t divide with zero”)

Output:

  • Enter a:10
    Enter b:0
    Can’t divide with zero

We can also use the else statement with the try-except statement in which, we can place the code which will be executed in the scenario if no exception occurs in the try block.

The syntax to use the else statement with the try-except statement is given below.

  • try:
    #block of code

    except Exception1:
    #block of code

    else:
    #this code executes if no except block is executed

Python Exception handling

Consider the following program.

Example 2

  • try:
    a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    c = a/b
    print(“a/b = %d”%c)
    # Using Exception with except statement. If we print(Exception) it will return exception class
    except Exception:
    print(“can’t divide by zero”)
    print(Exception)
    else:
    print(“Hi I am else block”)

Output:

  • Enter a:10
    Enter b:0
    can’t divide by zero
    <class ‘Exception’>

The except statement with no exception

Python provides the flexibility not to specify the name of exception with the exception statement.

Consider the following example.

Example

  • try:
    a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    c = a/b;
    print(“a/b = %d”%c)
    except:
    print(“can’t divide by zero”)
    else:
    print(“Hi I am else block”)

The except statement using with exception variable

We can use the exception variable with the except statement. It is used by using the as keyword. this object will return the cause of the exception. Consider the following example:

  • try:
    a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    c = a/b
    print(“a/b = %d”%c)
    # Using exception object with the except statement
    except Exception as e:
    print(“can’t divide by zero”)
    print(e)
    else:
    print(“Hi I am else block”)

Output:

  • Enter a:10
    Enter b:0
    can’t divide by zero
    division by zero

Points to remember

  1. Python facilitates us to not specify the exception with the except statement.
  2. We can declare multiple exceptions in the except statement since the try block may contain the statements which throw the different type of exceptions.
  3. We can also specify an else block along with the try-except statement, which will be executed if no exception is raised in the try block.
  4. The statements that don’t throw the exception should be placed inside the else block.

Example

  • try:
    #this will throw an exception if the file doesn’t exist.
    fileptr = open(“file.txt”,”r”)
    except IOError:
    print(“File not found”)
    else:
    print(“The file opened successfully”)
    fileptr.close()

Output:

  • File not found

Declaring Multiple Exceptions

The Python allows us to declare the multiple exceptions with the except clause. Declaring multiple exceptions is useful in the cases where a try block throws multiple exceptions. The syntax is given below.

Syntax

  • try:
    #block of code

    except (<Exception 1>,<Exception 2>,<Exception 3>,…<Exception n>)
    #block of code

    else:
    #block of code

Consider the following example.

  • try:
    a=10/0;
    except(ArithmeticError, IOError):
    print(“Arithmetic Exception”)
    else:
    print(“Successfully Done”)

Output:

  • Arithmetic Exception

The try…finally block

Python provides the optional finally statement, which is used with the try statement. It is executed no matter what exception occurs and used to release the external resource. The finally block provides a guarantee of the execution.

We can use the finally block with the try block in which we can pace the necessary code, which must be executed before the try statement throws an exception.

The syntax to use the finally block is given below.

Syntax

  • try:
    # block of code
    # this may throw an exception
    finally:
    # block of code
    # this will always be executed

Python Exception handling

Example

  • try:
    fileptr = open(“file2.txt”,”r”)
    try:
    fileptr.write(“Hi I am good”)
    finally:
    fileptr.close()
    print(“file closed”)
    except:
    print(“Error”)

Output:

  • file closed
    Error

Raising exceptions

An exception can be raised forcefully by using the raise clause in Python. It is useful in in that scenario where we need to raise an exception to stop the execution of the program.

For example, there is a program that requires 2GB memory for execution, and if the program tries to occupy 2GB of memory, then we can raise an exception to stop the execution of the program.

The syntax to use the raise statement is given below.

Syntax

  • raise Exception_class,<value>

Points to remember

  1. To raise an exception, the raise statement is used. The exception class name follows it.
  2. An exception can be provided with a value that can be given in the parenthesis.
  3. To access the value “as” keyword is used. “e” is used as a reference variable which stores the value of the exception.
  4. We can pass the value to an exception to specify the exception type.

Example

  • try:
    age = int(input(“Enter the age:”))
    if(age<18):
    raise ValueError
    else:
    print(“the age is valid”)
    except ValueError:
    print(“The age is not valid”)

Output:

  • Enter the age:17
    The age is not valid

Example 2 Raise the exception with message

  • try:
    num = int(input(“Enter a positive integer: “))
    if(num <= 0):
    # we can pass the message in the raise statement
    raise ValueError(“That is a negative number!”)
    except ValueError as e:
    print(e)

Output:

  • Enter a positive integer: -5
    That is a negative number!

Example 3

  • try:
    a = int(input(“Enter a:”))
    b = int(input(“Enter b:”))
    if b is 0:
    raise ArithmeticError
    else:
    print(“a/b = “,a/b)
    except ArithmeticError:
    print(“The value of b can’t be 0”)

Output:

  • Enter a:10
    Enter b:0
    The value of b can’t be 0

Custom Exception

The Python allows us to create our exceptions that can be raised from the program and caught using the except clause. However, we suggest you read this section after visiting the Python object and classes.

Consider the following example.

Example

  • class ErrorInCode(Exception):
    def __init__(self, data):
    self.data = data
    def __str__(self):
    return repr(self.data)

    try:
    raise ErrorInCode(2000)
    except ErrorInCode as ae:
    print(“Received error:”, ae.data)

Output:

  • Received error: 2000

Recently Trained Students

Jessica Biel

– Infosys

My instructor had sound Knowledge and used to puts a lot of effort that made the course as simple and easy as possible. I was aiming for with the help of the ZebLearn Online training imparted to me by this organization.

Richard Harris

– ITC

I got my training from Zeblearn in the Python Certification Training, I would like to say that say he is one of the best trainers. He has not even trained me but also motivated me to explore more and the way he executed the project, in the end, was mind-blowing.


Candidate’s Journey During Our Training Program

Card image cap

Expert’s Advice & Selection of Module

Choosing the right type of module for the training is half the battle & Our Team of experts will help & guide you.

Card image cap

Get Trained

Get Trained & Learn End to End Implementation from our Expert Trainer who are working on the same domain.

Card image cap

Work on Projects

We Do make our student’s work on multiple case studies , scenario based tasks & projects in order to provide real-time exposure to them.

Card image cap

Placements

We have a dedicated placement cell in order to provide placement assistance & relevant interviews to our candididates till selection

Placement Partner

×

Leave your details

×

Download Course Content




wop;[\]