python匿名函数的介绍及用途
匿名函数
用lambda能够创建一个匿名函数,这种函数得名于省略了用def声明函数的标准步骤。
语法
lambda [arg1 [,arg2,.....argn]]:expression
如何使用
- 我们正常定义一个函数时是这样的
def add(a,b):
return a+b
- 使用lambda定义匿名函数是这样的
add = lambda a,b:a+b # 和上面函数功能一样
按正常的调用方式即可。lambda表达式能够接收任何数量的参数但只能返回一个表达式的值。
用途
1.就像上文所述能后够简化代码
2.匿名函数作为参数传递
- 作为自定义函数的参数传递
def test(a, b, func):
result = func(a, b)
print(result)
func_new = input("请输入一个匿名函数:")
# eval()将字符串str当成有效的表达式来求值并返回计算结果。
func_new = eval(func_new)
test(11, 22, func_new)
"""
输出结果:
请输入一个匿名函数:lambda a,b:a+b
33
"""
- 作为内置函数的参数传递
例如:将列表中的字典按照指定的关键字进行排序
stus = [
{"name":"zhangsan", "age":18},
{"name":"lisi", "age":19},
{"name":"wangwu", "age":17}
]
stus.sort(key = lambda x:x['age'])
for stu in stus:
print(stu)
"""
输出结果:
{'name': 'wangwu', 'age': 17}
{'name': 'zhangsan', 'age': 18}
{'name': 'lisi', 'age': 19}
"""
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?