Python函数之匿名函数
1.匿名函数
匿名函数也叫做一行函数,比较简单的函数我们可以通过匿名函数构建,匿名函数不是没有名字,它是有函数名字,相对比较简单的函数我们可以通过匿名函数构建。
一般匿名函数是与一些特殊的内置函数配合使用的。定义匿名函数的关键字为lambda.
def func1(x, y):
return x + y
print(func1)
lambda 形参: 返回值
func = lambda x, y: x + y
print(func)
ret = func(1, 2)
print(ret)
匿名函数不是没有名字,整体表示函数的内存地址,可以赋值给一个变量,这个变量就是函数名 比如func.
注意点:
- 匿名函数的形参支持:位置参数,
*args, 仅限关键字参数,默认值参数,**kwargs
,常用的就是位置参数。
一般我们就是设置位置参数。
func1 = lambda x, *args, sex='男', **kwargs: kwargs
ret = func1(1,'barry', 3,sex='女', name='轩子')
print(ret)
-
匿名函数不是没有名字,有名字,整体代表函数的内存地址。
-
返回值在冒号后面,无需添加return。
-
匿名函数无论多复杂,必须只能是一行代码构建。
测试:
写匿名函数:接收一个可切片的数据,返回索引为0与2的对应的元素(元组形式)
func = lambda x: (x[0], x[2])
print(func('barry'))
写匿名函数:传入两个整形数据,将较大的数据返回。
func = lambda x, y: x if x > y else y
print(func(100, 20))
print(func(1, 20))