python--递归,Recursion

# while 1:
#     print('从前有座山')

# 递归:在函数中调用自身函数
# def story():
#     print('从前有座山')
#     story()
# story()

# RecursionError: maximum recursion depth exceeded while calling a Python object
# 递归的错误,超过了递归的最大深度
# 最大递归深度默认为  997/998 ————是python从内存角度出发做出的限制

# import sys
# sys.setrecursionlimit(10000)
# n = 0
# def story():
#     global n
#     n = n + 1
#     print(n)
#     story()
#
# story()

# 如果递归次数过多,就不适合使用递归来解决问题
# 优点:代码变简单
# 缺点:占内存

def age(n):
    if n == 4:
        return 40
    elif n > 0 and n < 4:
        return age(n+1) + 2
print(age(1))