递归特性:
1、必须有一个明确的结束条件
2、每次进入更深一层递归时,问题规模相比上次递归有所减少
3、递归效率不高,递归层次过多会导致栈溢出
count = 0
def cacl(n):
print("数字:",n)
if n > 0:
global count
count += n
n -= 1
return cacl(n)
num = cacl(5)
函数式编程的特点:允许把函数本身作为参数传入另一个函数,还允许返回一个函数
高阶函数:变量可以指向函数,函数的参数能接收变量,so 一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数
def add(x,y,f):
return f(x) + f(y)
res = add(3,-6,abs)
print(res)