Hick
Hick

Reputation: 36414

How to calculate a mod b in Python?

Is there a modulo function in the Python math library?

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

Upvotes: 175

Views: 744798

Answers (7)

Merijn
Merijn

Reputation: 355

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.

Upvotes: 28

Nehal Pawar
Nehal Pawar

Reputation: 97

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

output:

1
1
0
0

Upvotes: 2

uolot
uolot

Reputation: 1460

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

Upvotes: 60

UnsignedByte
UnsignedByte

Reputation: 907

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.

Upvotes: 5

Bill the Lizard
Bill the Lizard

Reputation: 406135

>>> 15 % 4
3
>>>

The modulo gives the remainder after integer division.

Upvotes: 43

Geo
Geo

Reputation: 96997

Why don't you use % ?


print 4 % 2 # 0

Upvotes: 11

eduffy
eduffy

Reputation: 40272

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

Upvotes: 263

Related Questions