Discuss / Python / 帮老师补充一下,lambda 无参数、默认参数、可变参数

帮老师补充一下,lambda 无参数、默认参数、可变参数

Topic source

居士先生

#1 Created at ... [Delete] [Delete and Lock User]

跟普通函数一样,lambda 也支持 无参数、默认参数 和可变参数

无参数:lambda :100  #传入一个固定值或者其他值

默认参数: lambda a,b=20,c=30 :a+b+c

可变参数: fn=lambda *a:list(a) ; print(fn(1,2,3)) #输出[1,2,3]

可变参数:fn=lambda **kws: kws ; print(fn(l1=1,l2=2,l3=3)) #输出{'l1': 1, 'l2': 2, 'l3': 3}

RMJH

#2 Created at ... [Delete] [Delete and Lock User]

8错8错

胖头鱼

#3 Created at ... [Delete] [Delete and Lock User]
#一个参数f = lambda x: x * xprint(f(6))#两个参数b = lambda x,y: x * x + y * yprint(b(1,2))#默认参数b = lambda x,y=2: x * x + y * yprint(b(1))def build(x, y):    return lambda: x * x + y * yg = build(1,2)print(g())#可变参数f = lambda *x: list(x)print(f(1,2,3))#可变参数f = lambda *x: xprint(f(1,2,3))f = lambda *x: tuple(x)print(f(1,2,3))#关键字参数f = lambda **x: xprint(f(f1=1,f2=2,f3=3))f = lambda **x: dict(x)print(f(f1=1,f2=2,f3=3))

  • 1

Reply