1 - 递归函数返回值为None
参考链接:
python 递归中的坑: return得到None
Python 递归函数返回值为None的解决办法
假设写的函数为:
def sum(x):
x += 1
if x < 5:
sum(x)
print x
else:
return x
print sum(0)
print输出正常,但返回值居然是个大写的None:
4
3
2
1
None
一番搜索,发现原因是没有在满足if条件里加return语句,导致函数执行完后没有返回值。。
解决办法:在满足if语句中添加return语句
def sum(x):
x += 1
if x < 5:
return sum(x)
else:
return x
print sum(0)