该函数将值返回到调用堆栈中较高的调用,为什么您认为它需要一个变量,例如进行简单的递归调用:
def r(n): if n == 0: return 0 return 1 + r(n-1)
然后,调用堆栈将如下所示:
r(3): return 1 + r(2) r(2): return 1 + r(1) r(1): return 1 + r(0) r(0): return 0
因此,当展开调用堆栈时,您将得到:
r(3): return 1 + r(2) r(2): return 1 + r(1) r(1): return 1 + 0--r(3): return 1 + r(2) r(2): return 1 + 1--r(3): return 1 + 2--3
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)