【发布时间】:2019-05-07 09:12:21
【问题描述】:
我有这个代码。它返回数字除以 10 的余数,然后将其附加到变量 sum。但由于某种原因,我得到了一个意想不到的价值。例如,如果 num 为 821,则余数应为 1。但 print 函数返回值 11。这非常令人困惑...
def sumDigit(num):
sum = 0
while(num):
sum += num % 10
num = int(num/10)
print(sum)
num = int(input())
sumDigit(num)
【问题讨论】:
-
你误解了函数的用途。它正在将数字的数字相加。
8+2+1==11 -
sumDigits 将数字相加而不取余数。
-
您似乎错过了正在发生的整个 sum 事情。你有一个名为
sumDigit的函数和一个名为sum的变量,其中添加了一些东西。这不仅仅是一个余数。
标签: python python-3.x