Last Updated : 15 Jul, 2025
An Exception is an Unexpected Event, which occurs during the execution of the program. It is also known as a run time error. When that error occurs, Python generates an exception during the execution and that can be handled, which prevents your program from interrupting.
Example: In this code, The system can not divide the number with zero so an exception is raised.
Python
Output
Traceback (most recent call last): File "/home/8a10be6ca075391a8b174e0987a3e7f5.py", line 3, in <module> print(a/b) ZeroDivisionError: division by zeroException handling with try, except, else, and finally
try: # Some Code.... except: # optional block # Handling of exception (if required) else: # execute if no exception finally: # Some code .....(always executed)Working of 'try' and 'except'
Let’s first understand how the Python try and except works
Example: Let us try to take user integer input and throw the exception in except block.
Python
# Python code to illustrate working of try()
def divide(x, y):
try:
# Floor Division : Gives only Fractional
# Part as Answer
result = x // y
print("Yeah ! Your answer is :", result)
except ZeroDivisionError:
print("Sorry ! You are dividing by zero ")
# Look at parameters and note the working of Program
divide(3, 2)
divide(3, 0)
Output:
Yeah ! Your answer is : 1 Sorry ! You are dividing by zeroCatch Multiple Exceptions in Python
Here's an example that demonstrates how to use multiple except clauses to handle different exceptions:
Python
try:
x = int(input("Enter a number: "))
result = 10 / x
except ZeroDivisionError:
print("You cannot divide by zero.")
except ValueError:
print("Invalid input. Please enter a valid number.")
except Exception as e:
print(f"An error occurred: {e}")
Output:
Enter a number: An error occurred: EOF when reading a lineElse Clauses in Python
The code enters the else block only if the try clause does not raise an exception.
Example: Else block will execute only when no exception occurs.
Python
# Python code to illustrate working of try()
def divide(x, y):
try:
# Floor Division : Gives only Fractional
# Part as Answer
result = x // y
except ZeroDivisionError:
print("Sorry ! You are dividing by zero ")
else:
print("Yeah ! Your answer is :", result)
# Look at parameters and note the working of Program
divide(3, 2)
divide(3, 0)
Output:
Yeah ! Your answer is : 1 Sorry ! You are dividing by zeroPython finally Keyword
Python provides a keyword finally, which is always executed after try and except blocks. The finally block always executes after normal termination of try block or after try block terminates due to some exception. Even if you return in the except block still the finally block will execute
Example: Let's try to throw the exception in except block and Finally will execute either exception will generate or not
Python
# Python code to illustrate
# working of try()
def divide(x, y):
try:
# Floor Division : Gives only Fractional
# Part as Answer
result = x // y
except ZeroDivisionError:
print("Sorry ! You are dividing by zero ")
else:
print("Yeah ! Your answer is :", result)
finally:
# this block is always executed
# regardless of exception generation.
print('This is always executed')
# Look at parameters and note the working of Program
divide(3, 2)
divide(3, 0)
Output:
Yeah ! Your answer is : 1 This is always executed Sorry ! You are dividing by zero This is always executed
Try, Except, else and Finally in Python
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4