Welcome 微信登录

首页 / 操作系统 / Linux / Python中的Lambda表达式

Lambda表达式在python程序中是一种很常见的匿名方法的书写形式,它书写起来非常简单,但是牺牲了可读性。下面来看一下Lambda的简单介绍。语法lambda [parameter_list]:expressionLambda表达式的返回值是一个函数,[parameter_list]是函数的参数,expression是具体的操作。它对应的非匿名方法的书写方式为:def function([parameter_list]):expression如下面的例子:#Functiondef func(n):return n + 1print(func(2))#Lambdaf = lambda x:x+1print(f)print(f(2))第一种方式是正常的非匿名函数的加一方法,第二种是匿名函数的lambda表达方式。Lambda中的x是表达式返回函数的参数,x+1是具体的函数内容。因为Lambda表达式返回的是一个匿名函数,所以打印结果为:当然Lambda表达式也有以下的使用情况:#多参数情况print("多参数情况")multi = lambda x,y,z: x+y+zprint(multi(1,2,3))#和非匿名函数一块工作print("和非匿名函数一块工作")def namedFunc(n):return lambda x:n+xprint(namedFunc(2)) #会打印出function,相当于 lambda x: 2+xprint(namedFunc(2)(3)) #会打印出5f = namedFunc(2)print(f(3)) #等同于namedFunc(2)(3)得到的结果如下: 对于lambda表达式在Python程序中的一些小建议:1. 对于简单的逻辑处理,可以放心使用Lambda表达式,这样比较简洁2. 对于复杂的逻辑处理,尽量避免使用Lambda表达式,易读性差,而且容易出错(大牛除外)C# Lambda表达式详解  http://www.linuxidc.com/Linux/2016-11/137109.htmLambda表达式和匿名内部类 http://www.linuxidc.com/Linux/2016-10/136338.htmJava Lambda表达式初探 http://www.linuxidc.com/Linux/2016-10/136337.htmLambda表达式(C语言) http://www.linuxidc.com/Linux/2016-07/133555.htm本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137429.htm