【发布时间】:2014-04-14 05:19:12
【问题描述】:
我真的不明白,为什么是代码
def isIn(char, aStr):
ms = len(aStr)/2
if aStr[ms] == char:
print 'i am here now'
return True
elif char>aStr[ms] and not ms == len(aStr)-1:
aStr = aStr[ms+1:]
elif char <aStr[ms] and not ms == 0:
aStr = aStr[0:ms]
else:
return False
isIn(char, aStr)
print isIn('a', 'ab')
确实继续返回 None。它打印“我现在在这里”,但它不返回 True,就像下一行所说的那样。为什么?
【问题讨论】:
-
函数的最后一行可能是
return isIn(char, aStr)?现在它正在从函数的末尾掉下来,没有返回任何东西。
标签: python recursion return nonetype