python函数函数嵌套分析步骤与递归函数

1、函数嵌套分析步骤:

1.NAME='czd'/
2.def zhangwuji():
    3.1 name = '张无忌'
    3.2 print(name)
    3.3 def songqingshu():
       3.4.1  name='宋青书'
       3.4.2  print(name)
       3.4.3 def zhaomin():
           3.4.5.1 name='赵敏'
            3.4.5.1print(name)
        3.4.4 print(name)
        3.4.5 zhaomin()
    3.4 songqingshu()
    3.5 print(name)
3.zhangwuji()

2、递归函数

def calc(n):
    print(n)
    if int(n/2) == 0:
        return n
    res = calc(int(n/2))
    return res


res=calc(10)
print(res)
执行结果如下:
10
5
2
1
1

分析:先计算n=10,不符合if语句,往下继续计算的5,同理可得到2和1,计算到1时,符合if语句。所以返回1,再将1反馈到2,...最终得到结果就是1.

2.1 递归函数的性质

(1)必须要有一个明确的目标;

(2)每次进入更新一层递归时,问题的规模比上次有所减少;

(3)递归函数每次运行需要等待,占用内存。

                    

原文地址:https://www.cnblogs.com/changzhendong/p/11157419.html