# How to calculate a mod b in Python?

## Question:

Is there a modulo function in the Python `math` library?

Isn’t `15 % 4`, 3? But `15 mod 4` is 1, right?

There’s the `%` sign. It’s not just for the remainder, it is the modulo operation.

Why don’t you use % ?

``````
print 4 % 2 # 0
``````

`mod = a % b`

This stores the result of `a mod b` in the variable `mod`.

And you are right, `15 mod 4` is 3, which is exactly what python returns:

``````>>> 15 % 4
3
``````

`a %= b` is also valid.

``````>>> 15 % 4
3
>>>
``````

The modulo gives the remainder after integer division.

you can also try `divmod(x, y)` which returns a tuple `(x // y, x % y)`

I don’t think you’re fully grasping modulo. `a % b` and `a mod b` are just two different ways to express modulo. In this case, python uses `%`. No, `15 mod 4` is not `1`, `15 % 4 == 15 mod 4 == 3`.

``````A = [3, 1, 2, 4]
for a in A:
print(a % 2)
``````

output:

``````1
1
0
0
``````
Categories: questions Tags:
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.