# Why does Python return 0 for simple division calculation?

## Why does Python return 0 for simple division calculation?

In Python 2, `25/100`

is zero when performing an integer divison. since the result is less than `1`

.

You can fix this by adding `from __future__ import division`

to your script. This will always perform a float division when using the `/`

operator and use `//`

for integer division.

Another option would be making at least one of the operands a float, e.g. `25.0/100`

.

In Python 3, `25/100`

is always `0.25`

.

This is a problem of integer **truncation** (i.e., any fractional parts of a number are discarded). So:

`25 / 100`

gives `0`

However, as long as *at least one* of the operands in the division is a float, youll get a float result:

`25 / 100.0`

or `25.0 / 100`

or `25.0 / 100.0`

all give `0.25`

#### Why does Python return 0 for simple division calculation?

`25/100`

is an integer calculation which rounds (by truncation) to `0`

.