python-14 递归函数和函数调用原理

函数调用

函数调用执行流程
enter description here
enter description here

enter description here
enter description here
enter description here

递归Recursion

enter description here

斐波那契数列
enter description here
enter description here
enter description here
enter description here
enter description here
enter description here
enter description here
enter description here

RecursionError
Ipython 栈空间3000 ,python 栈空间1000
sys.getrecursionLimit()
enter description here

enter description here

enter description here
enter description here

递归的性能
enter description here

enter description here

 递归总结

 递归练习
enter description here

enter description here
enter description here

pro = 1 
def fn1(n):    #  3 ;  2   1 
   if n == 1 :  #  
       return 1   #  1 
   global pro
   pro *= n     #  3   2  
   return  fn1(n-1)  #  2   1 

def fn1(n):   
   if n == 0 or n == 1 :  
       return 1  
   return n*fn1(n-1)
 def factorial(n):
       if n <= 2 :
           return n 
       return n * factorial(n-1)
   	
------------------------
n = 5 
f = 1 

for i in range(n, 0, -1):
   f *= i
   print(f)
   
-----------------------	
def factorial(n, f=1):
   f *= n
   if n == 1 :
       return f 
   return factorial(n-1, f)

enter description here
enter description here
enter description here

def peach(days=10):
   if days == 1 :
       return 1
   return  2 * (peach(days-1) + 1)

enter description here

enter description here

enter description here
enter description here

enter description here

posted @ 2022-04-22 09:58  何时&明月  阅读(40)  评论(0)    收藏  举报