def myLog(x,b):
def logCall(x,b,cnt):
if (int(x) < b):
return cnt
else:
cnt+= 1
logCall(int((int(x)/b)),b,cnt)
return logCall(x,b,0)
res=myLog(16,2)
print res
该函数应该返回一个值为4,但它返回无。当我打印cnt的值时,我看到了正确的值。但是,当我回来了,我得不到任何的价值python函数没有返回正确的值
这种尾递归函数只是_begging_被转换为迭代解决方案! – 2015-02-09 15:04:42
辉煌。非常感谢您的帮助 – 2015-02-09 15:08:40