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)
  • 相关阅读:
    2016-7-4工作总结
    2016-7第一周工作总结
    2016-6-30 工作总结
    2016-6-29 工作总结
    2016-6-28 工作总结
    基于软件开发对嵌入式开发的思考
    团队项目总结
    软件工程课程总结
    图描述之:流程图
    004-二叉树的遍历
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/11484692.html
Copyright © 2011-2022 走看看