匿名函数
匿名函数是指一类无需定义函数名的函数,一般用于只在代码中一次函数的引用场合,python用lambda语法定义匿名函数,只需用表达式二无序声明。lambda语法定义如下:
lambda [arg1 [,arg2,.....argn]]:expression
除了没有函数名,其语意与如下函数定义相同:
def func(arg1 [,arg2,.....argn]):
return expression
lambda 是一个表达式,函数体比 def函数要简单,使用lambda可以省去定义函数的过程,让代码更加精简。lambda函数的使用如下:
例1:定义lambda函数,返回两个数的和
sum1 = lambda x, y: x + y
print(sum1(1, 2)) # 调用sum1函数
# 输出3
例2:定义一个未知参数*args,返回所有元素的和
sum1 = lambda *args: sum(args)
print(sum1(10, 20, 30, 40))
# 100
例3:定义一个未知参数*args,排序
x = lambda *args: sorted(args)
print(x(102, 101, 103, 300))
# [101, 102, 103, 300]