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

    1.map()

    map()是python内置的高阶函数(一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数【若返回值为该函数本身,则为递归】,满足其一则为高阶函数),它接收一个函数f和一个list,并通过把函数f依次作用在list的每个元素上,返回一个新的list。

    # -*- coding:utf-8 -*-
    website = ["www.xx.com","www.baidu.com","bbs.xx.com"]
    def wordCount(string):
        return len(string)
    siteNameLength = map(wordCount,website)
    print siteNameLength

    结果:

    [17, 13, 18]

    2.匿名函数lambda()

    lambda()匿名函数是指一类无需定义标识符(函数名)的函数或子程序。lambda函数的格式为:冒号前是参数,冒号后面是返回值。

    # -*- coding:utf-8 -*-
    website = ["www.xx.com", "bbs.xx.com", "docs.xx.com"]
    siteNameLength = map(lambda string:len(string),website)
    print siteNameLength

    结果:

    [17, 17, 18]

    3.reduce()

    reduce()函数首先把前两个元素传给函数参数,函数加工后,然后把得到的结果和第三个元素作为两个参数传给函数参数,函数加工后得到的结果又和第四个元素作为两个参数传给函数参数,依次类推。

    print reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])
    
    S = lambda x,y,z:x+y+z
    print S(1,2,3)

    结果:

    15

    6

    4.filter()

    filter()函数用于过滤序列,过滤掉不符合条件的元素,返回迭代器对象(python2是列表)。

    list2 = filter(lambda x:x%2==0, [1,2,3,4,5,6])
    print(list(list2))

    结果:

    [2, 4, 6]
  • 相关阅读:
    CSS------制作一个带+-的input框
    rest简介
    flask之flask-login登陆验证(一)
    Python之异常设计(一)
    flask之flask-sqlalchemy(一)
    flask之wtforms 表单验证(一)
    三 Django模型层之Meta
    二 Djano模型层之模型字段选项
    一 Django模型层简介
    Django之路由、模板和模型系统 (转载)
  • 原文地址:https://www.cnblogs.com/python-kp/p/12200514.html
Copyright © 2011-2022 走看看