python--递归函数

递归函数

递归的定义——在一个函数里再调用这个函数本身

 

递归的最大深度——997

举一个递归的例子:

def age(n):
    if n==4:
        return 40
    else:
        return age(n+1)+2
print(age(1))

解析这个递归函数的执行过程:

解析执行步骤:
第一步:age(1)--->  参数1传进去--->返回age(2)+2给age(1)
def age(1):
    if n==4:
        return 40
    else:
        return age(1+1)+2  #---->age(2)+2
第二步:age(2)+2再次调用age()函数--->传入参数2--->返回age(3)+2给age(2)
def age(2):
    if n==4:
        return 40
    else:
        return age(2+1)+2  #---->age(3)+2
第三步:age(3)+2再次调用age()函数,--->传入参数3--->返回age(4)+2给age(3)
def age(3):
    if n==4:
        return 40
    else:
        return age(3+1)+2  #---->age(4)+2
第四步:age(4)+2再次调用age()函数--->传入参数4--->返回40给age(4)
def age(4):
    if n==4:
        return 40
    else:
        return age(n+1)+2
第五步:根据第四步,得到age(4)=40 ---> 根据第三步age(3)=age(4)+2=42--->根据第二步age(2)=age(3)+2=44---> 根据第一步age(1)=age(2)+2=46--->最终打印print(age(1))是46

 

posted on 2018-01-08 17:09  V神丫丫  阅读(194)  评论(0编辑  收藏  举报