Python递归操作列表返回None
def foo(a):
a.append(1)
if len(a) > 10:
print a
return a
else:
foo(a)
为什么这个递归函数会返回None(下面有详细记录)?我不太明白我哪里做错了。
In [263]: x = [] In [264]: y = foo(x) [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] In [265]: print y None
1 个回答
20
在else
这个部分,你没有返回任何东西:
else:
return foo(a)