Simple % question
Chris Angelico
rosuav at gmail.com
Tue Feb 11 20:36:37 EST 2014
On Wed, Feb 12, 2014 at 12:06 PM, Scott W Dunning <swdunning at cox.net> wrote:
> I just have a simple question. I don’t understand why 1%10 = 1?
The real question is: What do you expect that symbol to mean?
Its actual meaning is quite simple. In long division, dividing one
number by another looks like this:
86528
____________
31415 ) 2718281828
251320
------
205081
188490
------
165918
157075
------
88432
62830
-----
256028
251320
------
4708
(Monospaced font required here.)
2718281828 is the dividend; 31415 is the divisor. They're the numbers
we started with. At the top, we get the quotient, 86528, and down the
bottom, the remainder, 4708. Now let's ask Python about those numbers:
>>> 2718281828 // 31415
86528
>>> 2718281828 % 31415
4708
That's all it is. The // operator, when given two integers, will give
back an integer which is the quotient. The % operator (usually called
"modulo"), given the same two integers, gives you back the remainder.
With the dividend smaller than the divisor, your quotient is zero and
your remainder is the whole rest of the number; so 1 % 10 is 1. In
fact, 1 % anything greater than 1 will be 1.
Does that help?
ChrisA
More information about the Python-list
mailing list