如何在Python中找到一个数的除法余数呢?

例如: 如果这个数是26,整除数是7,那么整除余数是5。 (因为7+7+7=21,26-21=5。)


有关简单的可整除性测试,请参见如何检查一个数是否能被另一个数整除。


当前回答

如果你想避免取模,你也可以使用四个基本操作的组合:)

26 - (26 // 7 * 7) = 5

其他回答

取模是正确的答案,但如果你手动做的话,这应该是可行的。

num = input("Enter a number: ")
div = input("Enter a divisor: ")

while num >= div:
    num -= div
print num

除法的余数可以使用运算符%来发现:

>>> 26%7
5

如果你同时需要商和模,有一个内置的divmod函数:

>>> seconds= 137
>>> minutes, seconds= divmod(seconds, 60)

如果你想避免取模,你也可以使用四个基本操作的组合:)

26 - (26 // 7 * 7) = 5

如果你想在一行代码中得到商和余数(更通用的情况),使用:

quotient, remainder = divmod(dividend, divisor)
#or
divmod(26, 7)

我们可以用模算子(%)来解决这个问题

26%7 = 5;

但 26 / 7 = 3,因为它会给出商,而%运算符会给出余数。