递归函数不返回

时间:2015-11-01 11:45:31

标签: python

我正在使用递归函数,我不知道为什么函数不返回如果列表为空([]),即使执行返回之前的打印函数也是如此。

def go(mylist):
if not mylist:
    print('Empty list')
    return 'List Empty'
else:
    print(mylist)
    mylist.pop()
    go(mylist)

print(go([1, 2, 3, 4, 5]))

我返回'None',因为没有返回的函数总是返回'None'

1 个答案:

答案 0 :(得分:2)

您必须返回从递归调用中收到的值:

return go(mylist)