你好,python学习者,希望一切都好。今天我们将学习pythonlambda
function. Keyword lambda
in python is used to create 匿名函数. 匿名函数是那些未命名的函数。这意味着您定义的函数没有任何函数名。
Python羔
以下是编写匿名函数的基本语法lambda
.
lambda arguments: expression
与功能结构进行比较:
def functionName( arguments ):
statements...
return something
注意,def被关键字替换了lambda
, then there is no function name, after that arguments are as usual arguments.
函数包含某些语句,则可能返回某些值或不返回某个值。但是使用lambda
, it will contain an expression that will be returned.
Python lambda函数
def squareof(x):
return x*x
p = squareof(5)
print(p)
我们可以将上述函数转换为python lambda函数,如下所示:
f = lambda x: x*x
p = f(5)
print(p)
Python lambda函数将始终返回表达式的输出。下面是另一个接受两个参数并返回较大参数的示例。
输出为:
14
Python lambda函数有助于映射或过滤任何列表。
filter()中的Python lambda函数
如果要从列表中筛选列表中的值的长度是否为3。注意filter()是一个接受两个参数的函数。一个是函数,第二个是值列表。代码如下:
weekdays = ["sun", "mon", "tues", "wed", "thurs", "fri"]
days = filter(lambda day: day if len(day)==3 else "", weekdays)
for d in days:
print(d)
输出将是:
sun
mon
wed
在第2行中,函数参数是一个匿名函数,它从工作日列表中获取参数。并检查值的长度是否等于3。如果3,则返回值,否则将不返回任何内容。输出是根据我们想要的。
python lambda函数在map()中的使用
我们也可以使用lambda
in map(). map is a function that takes two argument one is function, another is a list. The following code is an example which finds the remainder of all the number by 5.
numbers = [ 74, 85, 14, 23, 56, 31,44 ]
remainders = map(lambda num: num%5, numbers)
for i in remainders:
print(i)
输出将是:
4
0
4
3
1
1
4
因此,您可以使用python lambda关键字创建匿名函数。对于小型功能,lambda
is helpful like shown above. Python lambda is similar to python列表理解这两者都是减少代码行数的一种方法。
在许多其他将函数作为输入参数的函数中,可以使用lambda关键字使用匿名函数。
希望您现在能够使用匿名函数并理解python中的lambda函数。感谢您阅读本文。