欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

匿名函数(lambda)

程序员文章站 2022-03-21 18:07:13
匿名函数 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]())