一、通过lambda语句创建匿名函数
>>> def fun1(x): return x * 2 + 1 >>> lambda x:x * 2 + 1 <function <lambda> at 0x000000F732724400> >>> g = lambda x:x * 2 + 1 >>> g(5) 11 #lambda语法是 lambda [函数参数]:[函数返回值]
匿名函数有个限制,就是只能有一个表达式
把匿名函数赋值给一个变量,再利用变量来调用该函数,比如上例中的 g 。当函数不在使用时,python的辣鸡清理机制会自动清除它。
再来看两个参数的例子
>>> add(1,2) 1 + 2 = 3 >>> lambda x,y:print(x,'+',y,'=',x+y) <function <lambda> at 0x000000F73272D488> >>> g = lambda x,y:print(x,'+',y,'=',x+y) >>> g(2,3) 2 + 3 = 5
尝试使用lambda定义更加多样化的函数,但是不要违背语句初衷
二、lambda语句与匿名函数的作用
- 省去定义函数的过程,使代码更精简
- 对于一些只需要使用几次的函数,不需另外想名字起名字
- 简化代码的可读性