【Python】写Python踩过的坑

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)
原文地址:https://www.cnblogs.com/dansz/p/12819118.html