问题描述
如果 %
应该返回余数,那么为什么
>>>1%2
1
>>>5%6
5
什么时候
>>>1/2
0.5
>>>5/6
0.83(3)
?
解决方法
这来自模数的数学定义,即:
x= quotient(x//y) * y + modulo(x%y)
在您的示例中,商为零,结果为:
5 = 0 * 6 + modulo(5%6) => modulo(5%6) = 5
1 = 0 * 2 + modulo(1%2) => modulo(1%2) = 1
如果 %
应该返回余数,那么为什么
>>>1%2
1
>>>5%6
5
什么时候
>>>1/2
0.5
>>>5/6
0.83(3)
?
这来自模数的数学定义,即:
x= quotient(x//y) * y + modulo(x%y)
在您的示例中,商为零,结果为:
5 = 0 * 6 + modulo(5%6) => modulo(5%6) = 5
1 = 0 * 2 + modulo(1%2) => modulo(1%2) = 1