'''
匿名函数:
官方定义,不推荐所有人使用的一种方式,但是官方支持该语法。
即懒人版的函数。只有极少数情况下会选择使用该方法。
匿名函数就是基于lambda关键字来实现的
'''
# 匿名函数示例
# a = lambda b:b+100 #定义了一个匿名函数,要求传入一个参数b,执行了b+100的操作,将结果返回给a变量
# print(a(500))
#
# # 完整版
# def a(b):
# return b+100
#
# print(a(500))
'''
递归函数:
函数调用自己
递归函数本质上就是循环,所以要设置跳出条件,避免死循环
'''
# 递归死循环
# def a():
# print('这是一个递归函数')
# a()
# a()
# def mul(n):
# num = n
# for i in range(1,n):
# num = num*i
# return num
#
# print(mul(10))
'''
程序运行流程:
num = 10
num = 10*1
num = 10*2
num = 20*3
num = 60*4
...
num = 362880*10
'''
# 递归版本
def mul_plus(n):
if n ==1:
return 1
else:
num = n*mul_plus(n-1)
return num
print(mul_plus(10))
'''
递归版运行流程:
n = 10
num = 10*mul_plus(9)
return 10*mul_plus(9)
n = 9
num = 9*mul_plus(8)
return 9*mul_plus(8)
n=8
num = 8*mul_plus(7)
return 8*mul_plus(7)
return ...
n = 3
num = 3*mul_plus(2)
return 3*mul_plus(2)
n=2
num = 2*mul_plus(1)
return 2*mul_plus(1)
return 1
num = 2*1
num = 3*2
num = 4*6
num = 5*24
...
num = 10*362880
'''