zoukankan      html  css  js  c++  java
  • python_lambda表达式(匿名函数)

    # lambda表达式,为了解决简单函数的情况,如:
    def func(a1,a2):
        return a1 + a2
    
    func = lambda a1,a2:a1+a2
    # 上面这两个是一样的
    def func1(a1,a2):
        return a1 + a2
    
    func2 = lambda a1,a2:a1+a2
    wdc = func1(100,200)
    yhf = func2(100,200)
    # 输出结果是一样的,两种方式一样
    print(wdc)
    print(yhf)

     还有很多写法:

    func1 = lambda :100
    # 表示函数没参数,只返回一个100
    print(func1())

    func2 = lambda x1:x1 + 100
    # 表示函数传递一个参数,返回x1+100
    print(func2(100))

    func3 = lambda *args,**kwargs:len(args)+len(kwargs)
    # 可以传递万能参数
    print(func3(1,2,3,wdc=123))

    ###lambda只能用一行表示,不能自己创建表变量

    data = 100
    # 可以接受父作用域中的变量
    func4 = lambda a1:a1+data
    print(func4(123))
    # lambda 表达式和三元运算的结合:输出两个值中的最大值
    func = lambda a1,a2:a1 if a1 > a2 else a2
    print(func(1,5))

     最后- -!lambda表达式也可以放在列表中

    func_list = [lambda x:x.strip(),lambda y:y+100,lambda x,y:x+y]
    v1 = func_list[0]('wdc ')
    # 把后面空格去掉了
    print(v1)
    
    v2 = func_list[1](100)
    print(v2)
    
    v3 = func_list[2](1,2)
    print(v3)
  • 相关阅读:
    golang变量2
    golang1
    golang api接收get,post请求读取内容方法
    docker2
    docker
    渗透1
    Crawley框架
    spider类
    爬豆瓣阅读遇到的问题
    CrawlSpiders类
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/11484692.html
Copyright © 2011-2022 走看看