zoukankan      html  css  js  c++  java
  • python的高阶函数(map,reduce,filter)

    Map函数

    Map()函数接受两个参数,第一个参数是函数,第二个参数是序列(list,tuple),map将函数依次作用到序列上的每一个元素上,并发结果作为新的list返回

    其中map的第一个参数的函数,必须只有一个参数

    def fun(x):
        return x*x

    if __name__ == '__main__':
        a=map(fun,(1,2,3,4,5,6))
        print a

    reduce函数

    reduce()函数接受两个参数,第一个参数为函数,第二个参数为序列,reduce将结果与序列的下一个元素累计计算

    其中reduce的第一个参数的函数,必须有两个参数

    def fun(s,x):
        return s +x
    if __name__ == '__main__':
        a=reduce(fun,['p', 'y', 't', 'h', 'o', 'n'])
        print a

    filter函数

    filter()函数接受两个参数,第一个参数为函数,第二个参数为序列,filter将函数依次作用到序列上的每一个元素,然后根据返回值判断true或者false,决定保留还是丢弃该元素

    def fun(x):
        return x%2==1
    if __name__ == '__main__':
        a=filter(fun,(1,2,3,4,5,6,7))
        print a

    lambda

    lambda是一个表达式,函数体比def简单很多,它起到函数书写的作用

    f= lambda x,y:x*y
    print f(4,5)
  • 相关阅读:
    Markdown 语法说明 (简体中文版)
    Markdown Reference
    BZOJ 2229 最小割
    BZOJ 3569 DZY Loves Chinese II
    BZOJ 3563 DZY Loves Chinese
    BZOJ 2956 模积和
    BZOJ 2957 楼房重建
    查漏补缺:面向对象设计原则
    添砖加瓦:设计模式(简单工厂模式)
    添砖加瓦:设计模式(总述)
  • 原文地址:https://www.cnblogs.com/hellowcf/p/7122593.html
Copyright © 2011-2022 走看看