Advertisement

Python实现递归函数调用

阅读量:
复制代码
 def listSum(numList):

    
     theSum = 0
    
     for i in numList:
    
     theSum += i
    
     return theSum
    
  
    
 numList = [1,3,5,7,9]
    
 print(listSum(numList))
    
  
    
 >> 25
    
   12. theSum = (1 + (3 + (5 + (7 + 9))))
    
 theSum = (1 + (3 + (5 + 16)))
    
 theSum = (1 + (3 + 21))
    
 theSum = (1 + 24)
    
 theSum = 25
    
    
    
    

采用递归方式完成

复制代码
 def listSum(numList):

    
     if len(numList) == 1:    # 递归三原则-1: 基本情况,列表长度为1
    
     return numList[0]
    
     else:
    
     return numList[0] + listSum(numList[1:]) 
    
 # 递归三原则-2: 改变

全部评论 (0)

还没有任何评论哟~