一、高阶函数
1.高阶函数是指把函数作为参数的一种函数。
2.高阶函数示例
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
3.注意:函数不仅可以赋给形参,也可以赋给普通变量。赋值后,即可以用变量名替代函数名完成函数调用。
二、lambda函数
1.lambda函数也称为匿名函数,是一种不使用def定义函数的形式,其作用是能快速定义一个简单的函数。
lambda函数的函数体只是一个表达式,所以lambda函数通常只能实现比较简单的功能。
2.格式
lambda [参数1[, 参数2, ..., 参数n]]: 表达式
冒号后面的表达式的计算结果即为该lambda函数的返回值。
3.lambda函数示例
1 def FunAdd(f,x,y): #定义函数FunAdd 2 return f(x)+f(y) #用传给f的函数先对x和y分别处理后,再求和并返回 3 print(FunAdd(lambda x:x**2,3,-5)) #调用函数FunAdd,计算32+(-5)2 4 print(FunAdd(lambda x:x**3,3,-5)) #调用函数FunAdd,计算33+(-5)3
代码解析:第3行代码中,lambda x:x**2定义了一个lambda函数,其有一个参数x,返回值是x**2(即x的平方);第4行代码中,lambda x:x**3定义了另一个lambda函数,其有一个参数x,返回值是x**3(即x的立方)。也可以将lambda函数赋给一个变量,然后通过该变量去调用相应的lambda函数。如:
fun=lambda x:x**2
print(fun(3)) #输出9
披荆斩棘,仗剑天涯
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通