Open In App

ZeroDivisionError: float division by zero in Python

Last Updated : 22 Mar, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

In this article, we will see what is ZeroDivisionError and also different ways to fix this error.

What is ZeroDivisionError?

A ZeroDivisionError in Python occurs when we try to divide a number by 0. We can’t divide a number by 0 otherwise it will raise an error. Let us understand it with the help of an example. In this example, we are dividing a number from 0 and we can see that it raises a ZeroDivisionError.

Python
a = 20
b = 0
print(a / b)

How to Fix ZeroDivisionError in Python

Below are the following ways by which we can fix ZeroDivisionError in Python:

Checking if the value we are dividing by is not 0

The ZeroDivisionError can be fixed by using a conditional statement in which we can check whether the denominator is zero or not. If the denominator is zero then we print that the Denominator is zerootherwise normal calculation would be performed.

In this another example, we are checking if the denominator is zero or not. In this case, the denominator is 0 but by using if-else condition, we will handle the error.

Python
a = 15.0
b = 5.0

if b == 0:
    print("Denominator is zero")
else:
    print(a / b)

Output
3.0

Python fix ZeroDivisionError using a try/except Statement

We have used an exception handler here that sets the result to 0 if such an error occurs, and it then prints the result, which will be 0

Python
a = 16.0
b = 0

try:
    res = a / b
except ZeroDivisionError:
    res = 0

print(res) 

Output
0

Handling user input with Python try/except Statement

This code takes an input number from the user and attempts to divide ‘a’ by it. If the user enters a valid number, it calculates and prints the result. However, it has an exception handler that catches two types of errors: ZeroDivisionError (if the user enters 0) and ValueError (if the user enters something that’s not a valid number). In case of either error, it prints a message asking the user to enter a number greater than zero.

Python
a = 18.0

try:
    b = int(input('Enter a number: '))
    ans = a / b
    print(f'Answer is: {ans}')
except (ZeroDivisionError, ValueError):
    print('Please enter a number greater than zero')

Output:

Screenshot-2023-09-14-at-44239-PM

Division by zero



Next Article
Article Tags :
Practice Tags :

Similar Reads