美文网首页
lambda表达式和map()函数

lambda表达式和map()函数

作者: 福瑞斯特张 | 来源:发表于2016-06-19 13:03 被阅读785次

    Lambda表达式是Python中一类特殊的定义函数的形式,使用它可以定义一个匿名函数。也就是说,匿名函数本质上就是一个函数,它所抽象出来的东西是一组运算。

    问题来了,lambda既然也是函数,什么时候使用lambda表达式,什么时候使用def定义函数呢?

    我的理解是当函数只需要做一件(有关运算的)事情,且函数名称无关紧要时,可选择lambda。

    接下来看map() 函数,它可以将一个函数映射到一个可枚举类型上面。格式为:

      map(函数, 可枚举的类型)  #将函数  依次套用在每一个元素上面
    

    实例:

    x = [1,2,3]
      def add1(number):
          return number+1
    
    #for循环
    for item in x:
        print(add1(item))
    
    #列表推导
    print([add1(n) for n in x])
    
    #map和lambda表达式
    print(map(lambda n: n+1, x)
    

    参考链接:

    1. 知乎吴涛对lambda、map的解释

    https://www.zhihu.com/question/20125256

    1. 列表推导来自NovemberEleven的博客

    http://www.cnblogs.com/skyhacker/archive/2012/01/27/2330288.html

    相关文章

      网友评论

          本文标题:lambda表达式和map()函数

          本文链接:https://www.haomeiwen.com/subject/fkybdttx.html