首页 > 解决方案 > 是否可以在 lambda 函数中为变量赋值?

问题描述

如何在 lambda 表达式中分配变量?

例如,我有这样的 lambda 函数。

o = lambda x,y: x+y

我希望 x+y 等于另一个变量,以便稍后在 lambda 表达式中使用它。

o= lambda x,y: avg = x+y #this thorws an error

我尝试阅读 lambda 文档,但没有任何帮助。

如果我可以创建一个变量,我以后将如何使用它?

标签: pythonfunctionlambda

解决方案


是的,使用新的:=“海象”赋值运算符,您可以在表达式中进行赋值,包括在 lambdas 中。请注意,这是一个需要 Python 3.8 或更高版本的新功能。

lambda x, y: (avg:=x+y)

也有一些方法可以在旧版本的 Python 上模拟此运算符,但:=现在是正确的方法。


推荐阅读