小编给大家分享一下python中lambda的用法是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

对于一个函数,只有一句话表示,那么就可以用lambda表达式表示,如:

deff(x):returnx*xprint(f(5))

out:25

可以写为:

f=lambdax:x*x#冒号左边为输入,右边是返回值,f是函数名print(f(5))

out:25

对于多个形式参数:

g=lambdax,y:x+y#冒号左边为输入,右边是返回值,f是函数名print(g(4,5))

out:9

lambda用到比较多的地方是排序,如:

defget_four(my):returnmy[2]tuple_my=[]file=open("file.csv","r")forlineinfile:Line=line.strip()arr=line.split(",")one=arr[1]three=arr[3]four=int(arr[4])tuple_my.append((one,three,four))tuple_my.sort(key=get_four)formyintuple_my:print(my)

可以写为:

get_four=lambdamy:my[2]tuple_my=[]file=open("file.csv","r")forlineinfile:Line=line.strip()arr=line.split(",")one=arr[1]three=arr[3]four=int(arr[4])tuple_my.append((one,three,four))tuple_my.sort(key=get_four)formyintuple_my:print(my)

tuple_my=[]file=open("file.csv","r")forlineinfile:Line=line.strip()arr=line.split(",")one=arr[1]three=arr[3]four=int(arr[4])tuple_my.append((one,three,four))tuple_my.sort(key=lambdamy:my[2])formyintuple_my:print(my)

lambda也经常用在符合函数下,如:

defquadratic(a,b,c):returnlambdax:a*x*x*x+b*x*x+c*xf=quadratic(3,-2,4)print(f(5))

345

defquadratic(a,b,c):returnlambdax:a*x*x*x+b*x*x+c*xprint(quadratic(3,-2,4)(5))

345

看完了这篇文章,相信你对python中lambda的用法是什么有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!