Python Try Except (original) (raw)

Last Updated : 19 Mar, 2025

In Python, errors and exceptions can interrupt the execution of program. Python provides try and except blocks to handle situations like this. In case an error occurs in try-block, Python stops executing try block and jumps to exception block. These blocks let you handle the errors without crashing the program.

Python `

try: # Code that may raise an exception x = 3 / 0 print(x) except: # exception occurs, if code under try throws error print("An exception occurred.")

`

Output

An exception occurred.

Try Except in Python

Try and Except statement is used to handle these errors within our code in Python. The try block is used to check some code for errors i.e the code inside the try block will execute when there is no error in the program. Whereas the code inside the except block will execute whenever the program encounters some error in the preceding try block.

**Syntax:

try:
# Some Code
except:
# Executed if error in the
# try block

**How try() works?

**Some of the common Exception Errors are :

**Example #1: No exception, so the **try clause will run.

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)

`

Output

Yeah ! Your answer is : 1

**Example #2: There is an exception so only **except clause will run.

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, 0)

`

Output

Sorry ! You are dividing by zero

Example #3: The other way of writing **except statement, is shown below and in this way, it only accepts exceptions that you’re meant to catch or you can check which error is occurring.

Python `

code

def divide(x, y): try: # Floor Division : Gives only Fractional Part as Answer result = x // y print("Yeah ! Your answer is :", result) except Exception as e: # By this way we can know about the type of error occurring print("The error is: ",e)

divide(3, "GFG") divide(3,0)

`

Output

The error is: unsupported operand type(s) for //: 'int' and 'str' The error is: integer division or modulo by zero

Else Clause

In Python, you can also use the else clause on the try-except block which must be present after all the except clauses. The code enters the else block only if the try clause does not raise an exception.

**Syntax:

try:
# Some Code
except:
# Executed if error in the
# try block
else:
# execute if no exception

**Example:

Python `

Program to depict else clause with try-except

Function which returns a/b

def AbyB(a , b): try: c = ((a+b) // (a-b)) except ZeroDivisionError: print ("a/b result in 0") else: print (c)

Driver program to test above function

AbyB(2.0, 3.0) AbyB(3.0, 3.0)

`

Output

-5.0 a/b result in 0

Finally Keyword in Python

Python provides a keyword finally, which is always executed after the try and except blocks. The final block always executes after the normal termination of the try block or after the try block terminates due to some exceptions.

**Syntax:

try:
# Some Code
except:
# Executed if error in the
# try block
else:
# execute if no exception
finally:
# Some code .....(always executed)

Python `

Python program to demonstrate finally

No exception Exception raised in try block

try: k = 5//0 # raises divide by zero exception. print(k)

handles zerodivision exception

except ZeroDivisionError:
print("Can't divide by zero")

finally: # this block is always executed
# regardless of exception generation. print('This is always executed')

`

Output

Can't divide by zero This is always executed

**Related Articles: