目前,我已经编写了一个递归函数来执行 sum_of_digits 但它适用于较小的数字,例如小于 6。
但是对于更大的数字,由于某种原因,计算会出错。
def sum_of_digits(i):
if i == 0 :
return i
else:
return i % 10 + sum_of_digits(i / 10)
sum_of_digits(228475)
# returns 31.111111111111107
# should be returning 28 instead
我在这里做错了什么?