匿名函数(lambda)
程序员文章站
2024-01-01 18:55:10
匿名函数 lambda(一句话函数) 1.语法: 变量名 = lambda 参数(形参) : 返回值 2.匿名函数的名字叫做 lambda 3.lambda是定义匿名函数的关键字; lambda后面直接加形参,形参加多少都可以,用逗号隔开; 返回值和正常的函数一样,只能返回一个数据类型,可以是任意数 ......
匿名函数 lambda(一句话函数)
1.语法: 变量名 = lambda 参数(形参) : 返回值
2.匿名函数的名字叫做 lambda
3.lambda是定义匿名函数的关键字; lambda后面直接加形参,形参加多少都可以,用逗号隔开; 返回值和正常的函数一样,只能返回一个数据类型,可以是任意数据类型; 匿名函数只能写一行,且逻辑结束后直接返回数据.
func = lambda a,b: a+b print(func(3, 4))
lst = [lambda i:i*i for i in range(10)] print(lst[2](2)) # 4 lst = [lambda :i*i for i in range(10)] print(lst[2]()) # 81 lst = list(lambda i:i*i for i in range(5)) print(lst[1](4)) # 16 lst = [x for x in (lambda :i**i for i in range(5))] print(lst[2]()) #256
lst得到是10个lambda内存地址组成的列表,形参可以不写,返回值必须写
lst = [] # 1.3拆解 for i in range(10): def func(i): return i*i lst.append(func) print(lst[2](3))
lst1 = [] # 5.7拆解 def func(): for i in range(5): def foo(): return i**i yield foo for x in func(): lst1.append(x) print(lst1[2]())