zoukankan      html  css  js  c++  java
  • python匿名函数lambda用法

    介绍匿名函数之前不妨先看看这两个函数:

    def add(x,y):
        return x+y
    print(add(1,2))   #3
    f=lambda x,y:x+y
    print(f(1,2))

    上面这两段代码实现的功能是完全一样的。第二段代码里面:lambda x,y:x+y  这就是一个函数,由于没有函数名称,所以称匿名函数。

    下面仔细介绍一下匿名函数:

    1、匿名函数:没有函数名字。用lambda声明。
    2、匿名函数的格式:
         lambda arg1,arg2,.....argn:expression
       冒号是分隔符,冒号前是函数的参数,冒号后带上一个表达式。
    3、匿名函数不需要用return。后面的表达式就是返回值
    4、调用方法:将匿名函数赋值给一个变量,然后这个变量就可以像一个正常的函数一样使用
    # 无参数:
    f=lambda :'abc'
    print(f())    #'abc'
    
    #带多个参数的
    f=lambda a,b,c: a+b+c
    print(f(1,2,3))   #6
    
    #带默认参数
    f=lambda a,b,c=4: a+b+c
    print(f(1,2))    #7

    匿名函数的高级使用技巧:结合map.reduce,filter使用:

    from functools import  reduce
    data=[1,2,3,4,5,6,7,8,9,10]
    print(reduce(lambda x,y:x+y,data))   #55

      

    data=[1,2,3,4,5,6,7,8,9,10]
    print(list(map(lambda x:x*x,data)))  
    #输出为[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  • 相关阅读:
    个人总结
    第二次冲刺 10
    第二次冲刺 09
    第二次冲刺 08
    第二次冲刺 07
    团队冲刺第七天
    团队绩效评估
    团队冲刺第六天
    团队冲刺第五天
    团队冲刺第四天
  • 原文地址:https://www.cnblogs.com/linshuhui/p/8980463.html
Copyright © 2011-2022 走看看