我们在创建函数的时候,有时候不显式定义函数,直接传入一个匿名函数会更方便。这样就省去了我们尝试给函数命名的麻烦,也可以节省很多代码。许多编程语言都提供了这个功能。匿名函数用得好,会起到画龙点睛的作用。如果用不好,很容易“画虎不画狗”。我们需要在平时的代码过程中多学习,多观察,多思考。
Python语言使用lambda关键字来创建匿名函数。
所谓匿名,就是一个函数不再以def语句这样的标准形式定义。
lambda只是一个表达式,不是代码块,函数体也比def简单很多。 lambda 表达式只能封装有限的逻辑。 lambda 函数有自己的命名空间。
其形式通常是这样的:lambda 参数: 表达式。
例如:lambda x: x * x。它相当于下面的函数:
def f(x):
return x * x
关键字lambda代表匿名函数,冒号前的x代表函数参数,x*x为执行代码。
一个匿名函数只能有一个表达式,没有它就不能写return语句。表达式的结果是它的返回值。匿名函数没有函数名,不用担心函数名冲突,节省字面空间。此外,匿名函数也是一个函数对象。你也可以将一个匿名函数赋值给一个变量,然后使用这个变量来调用这个函数:
>>> f = lambda x: x * x
>>> f
<function <lambda> at 0x3216fef44>
>>> f(6)
36
你还可以返回一个匿名函数作为另一个函数的返回值。
def add(string, i):
return lambda: int(string) + i
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python如何遍历字符串08/20
- ♥ Python:使用 cookie 绕过验证码01/06
- ♥ 如何干净地卸载python11/23
- ♥ 什么是python算法08/31
- ♥ 如何在python中进行冒泡排序09/17
- ♥ 什么是 Python 中的 Kafka10/25
内容反馈