zoukankan      html  css  js  c++  java
  • map、filter、reduce函数

    map主要用于对可迭代对象进行简单处理获取一个新的符合需求的数据,查看以下示例:

    """
        map(方法逻辑处理,可迭代对象)
        returns 方法内存地址
        list 填充处理结果
       列表每个元素值加1
    """ def main(): nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(map(lambda n: n + 1, nums)) print(list(map(lambda n: n + 1, nums))) if __name__ == '__main__': main()

    返回结果:

      <map object at 0x000001CBC6F160F0>
      [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

    filter主要对可迭代对象进行过滤操作返回符合某一个或者多个条件的数据,查看以下示例:

    """
        filter(方法逻辑处理,可迭代对象)
        returns 方法内存地址
        list 填充处理结果
      查找列表中奇数
    """ def main(): nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(filter(lambda n: not n % 2 == 0, nums)) print(list(filter(lambda n: not n % 2 == 0, nums))) if __name__ == '__main__': main()

    返回结果:

      <filter object at 0x000001BC4FB160F0>
      [1, 3, 5, 7, 9]

    reduce对迭代器的对象进行合并处理,注意要导入from functools import reduce

    """
        reduce(方法逻辑处理,可迭代对象, 初始值 default None)
        returns 处理结果
        求和
    """
    from functools import reduce
    
    
    def main():
        nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
        print(reduce(lambda x, y: x+y, nums))
        print(reduce(lambda x, y: x+y, nums, 1))
    
    
    if __name__ == '__main__':
        main()

    返回结果,reduce可以传入一个初始值:

      45

      46 

  • 相关阅读:
    HTML的基本知识
    java script后续
    java script
    CSS
    DAY 33 进程理论与进程方法
    DAY 32 UDP协议、Socketserver模块,并发编程基础
    DAY 30 网络编程基础
    DAY 25多态、反射、异常处理
    DAY 24继承与组合
    DAY 23 面向对象(二)
  • 原文地址:https://www.cnblogs.com/louiszh/p/12295222.html
Copyright © 2011-2022 走看看