python系列10:lamda函数

参数匹配

参数匹配有顺序匹配和指定匹配两种方式

def func(a,b,c):
    print(a,b,c)

func(1,2,3)
func(a=3,b=1,c=2)

在这里插入图片描述

定义不确定数量的自变量

def func(*a):
    return sum(a)/len(a)

res=func(2,3,4,5)
print(res)

可以用*进行解包,然后用元组传递变量

lambda匿名函数

lambda函数可以不用定义函数名称,所以在某些情境下,所得表达式可以更加简洁

res=lambda x,y:x+y
print(res(1,2))
f=lambda name,age:print('hello','{}! age: {}'.format(name,age))
f('geep','24')

代理执行

代理执行可以使得参数的传递在某些场景下更加的方便,使代码更加简洁

def func(*a):
    return sum(a)/len(a)
action=func
print(action(1,4))

例如,在多重条件语句下,其非常适用

def ave_(*a):
    return sum(a)/len(a)
def add_(*a):
    return sum(a)
def count_(*a):
    return len(a)

a=(1,2,3,4,5,6)
i=len(a)
if i>5:
    action=ave_
elif i==5:
    action=add_
else:
    action=count_
print(action(*a))

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值