def digital_root(n):
s=0
if n < 10:
return n
else:
while n>0:
s+=n%10
n=n//10
digital_root(s)
我提交问题时遇到了麻烦。我确保返回了数字,并通过将其输出到日志中检查了该数字的正确性,但测试仍然失败并且说我返回了None,但实际上我没有。
def digital_root(n):
s=0
if n < 10:
return n
else:
while n>0:
s+=n%10
n=n//10
digital_root(s)
在递归调用之前需要添加 return
语句:
def digital_root(n):
s=0
if n < 10:
return n
else:
while n>0:
s+=n%10
n=n//10
return digital_root(s) # added 'return' here