最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

lambda函数是怎么使用的呢?用在什么位置在哪些地方使用可以达到我们想要的效果呢?这么方便的函数一直存在议论你知道吗?下面一起来看看。

简介

lambda函数又叫匿名函数,他跟一般的函数区别在于,不用费神去想一个函数的名字,这是两者最大的区别!所以在特定的情况下,使用起来特别的方便。

lambda表达式:

lambda arg1, arg2, … : expression
最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

使用 lambda 关键字定义;
参数arg1, arg2 等表示 1 个或多个参数列表,注意不需要括号;
冒号:不是表示新的语句块;
表达式:expression 是对参数列表中的参数进行计算,
注意:没有 retrun返回,整个表达式的结果为匿名函数的返回值;
匿名函数只能写在一行上,也被称为单行函数;匿名函数中不需要出现 if while for 等语句;

lambda的应用场景:

把lambda函数赋值给一个变量;

最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

定义一个乘法函数,并把值赋给变量mul,就可以执行mul(1,2);

把lambda函数赋值给其他函数;

最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

把标准库time函数中sleep功能屏蔽,只要在程序初始法时调用;
time.sleep= lambda x : None,time库的sleep函数不会执行原功能;

把lambda函数作为其他函数的返回值;

最方便的函数lambda,再也不会看不懂大神的代码!
最方便的函数lambda,再也不会看不懂大神的代码!

把lambda函数做参数传给其它函数(map, filter, reduce);

最方便的函数lambda,再也不会看不懂大神的代码!
最方便的函数lambda,再也不会看不懂大神的代码!

看两个复杂的列子:

利用map映射函数输出序列加工后的新序列。

最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

利用filter过滤函数输出0-9的奇数;

最方便的函数lambda,再也不会看不懂大神的代码!

最方便的函数lambda,再也不会看不懂大神的代码!

猜你喜欢

转载自blog.csdn.net/weixin_41334453/article/details/93481752
今日推荐