递归函数使用调用栈,下面是计算阶乘的递归函数。
def fact(x):
if x==1:
return 1
else:
return x*fact(x-1)
print fact(3)
下面详细分析调用fact(3)时调用栈是如何变化的流程图。
注意:每个fact调用都有自己的x变量,在一个函数调用中不能访问另一个x变量。
递归函数使用调用栈,下面是计算阶乘的递归函数。
def fact(x):
if x==1:
return 1
else:
return x*fact(x-1)
print fact(3)
下面详细分析调用fact(3)时调用栈是如何变化的流程图。
注意:每个fact调用都有自己的x变量,在一个函数调用中不能访问另一个x变量。