《Python语言程序设计》 —3.5.2 高阶函数
3.5.2 高阶函数
高阶函数是指把函数作为参数的一种函数。例如,我们定义一个函数FunAdd,其功能是先用函数f对两个数据x和y进行处理,再进行求和运算,即实现f(x)+f(y),参见代码清单3-29。
代码清单3-29 高阶函数示例
1 def FunAdd(f,x,y): #定义函数FunAdd
2 return f(x)+f(y) #用传给f的函数先对x和y分别处理后,再求和并返回
3 def Square(x): #定义函数Square
4 return x**2 #返回x的平方
5 def Cube(x): #定义函数Cube
6 return x**3 #返回x的立方
7 print(FunAdd(Square,3,-5)) #调用函数FunAdd,计算32+(-5)2
8 print(FunAdd(Cube,3,-5)) #调用函数FunAdd,计算33+(-5)3
程序执行完毕后,将在屏幕上输出如下结果:
34
-98
提示 在代码清单3-29中,执行第7行代码时将Square函数作为实参传给了FunAdd函数的形参f,此时在FunAdd函数中调用f(x)和f(y)相当于调用Square(x)和Square(y);执行第8行代码时将Cube函数作为实参传给了FunAdd函数的形参f,此时在FunAdd函数中调用f(x)和f(y)就相当于调用Cube(x)和Cube(y)。
函数不仅可以赋给形参,也可以赋给普通变量。赋值后,即可以用变量名替代函数名完成函数调用。
- 点赞
- 收藏
- 关注作者
评论(0)