Python中如何使用Lambda函数 | 您所在的位置:网站首页 › python中的lambda怎么理解 › Python中如何使用Lambda函数 |
Python和其他编程语言一样,都在其语法中添加了lambda函数,Python lambda 是匿名函数,比常规Python自定义函数有更简洁的语法。 虽然Lambda语法在开始时可能会觉得有点混乱,但一旦掌握了它,它就会非常方便。优点通常是整洁、实用和紧凑。 在 Python 中,函数通常是这样创建的: def my_func(a): # function bodyPython lambda 语法: lambda arguments : expressionlambda 参数:表达式 我们看一个示例,计算一个数的平方 以上代码的第1、2、3行是常规的自定义函数,调用函数,输出数据。 第5、6行,先赋值一个变量,将其传递给lambda函数,但是输出结果并不是我们想象的。输出,而不是25。 事实上,这不是调用lambda函数的正确方法。要将参数传递给lambda函数、执行它并返回结果,我们应该使用第8行的格式。 同样,可以使用调用函数方式,返回正确结果。 以上示例输出结果: 9 25 25 lambda函数可以具有任意数量的参数,但只能有一个表达式,该表达式将被计算并返回。 lambda函数与使用def自定义的函数之间的主要区别在于,不能在lambda函数中使用多个语句,并且允许在lambda中使用的语句也非常有限。使用lambda函数执行复杂操作可能会影响代码的可读性。 Python中的lambda函数的使用一直存在争议,因为可读性问题遭到很多人的反对。尽管很多人质疑Python中lambda函数存在必要性,但lambda函数有时可以为开发人员提供有价值的东西。 Lambda函数配合其他内置函数使用,还是很方便的。 文中代码汇总 def d(x): return x**2 print(d(3)) x=5 print(lambda x:x**2) #输出 print((lambda x:x**2)(x)) #输出25 m=lambda x:x**2 print(m(5)) #输出25 #lambda函数中使用if-else语句 y=lambda x: x if(x > 10) else 10 print(y(5)) #输出10 print(y(15)) #输出15 #lambda函数中使用if-elif-else语句 y=lambda x:x*10 if x>10 else (x*5 if x |
CopyRight 2018-2019 实验室设备网 版权所有 |