zoukankan      html  css  js  c++  java
  • python函数(二)

    1.高阶函数:就是把函数当成参数传递的一种函数,
    def add(x,y,f):
    return f(x) + f(y)
    print(add(-8,11,abs))

    map()函数:
    map函数是python内置的一个高阶函数,它接受一个函数f和一个list,并把list
    的元素以此传递给函数f,然后返回一个函数f处理完所有list元素的列表,
    def f2(x):
    return x*x

    l = [1, 2, 3, 4, 5]
    print (map(f2, l))

    reduce()函数:
    接收参数:一个函数f,一个list,
    reduce()传入的函数f必须接收两个参数,
    第一次调用是把list的前两个元素传递给f,
    第二次调用时,就是把前两个list元素的计算结果
    当成第一个参数,list的第三个元素当成第二个参数,
    以此类推;

    filter()函数
    接收一个函数f和一个list,这个函数f的作用是对
    每个元素进行判断,返回True或False,
    filter()返回符号条件元素组成的新list.
    def id_odd(x):
    return x%2 == 1
    print(filter(id_odd,[1,2,3,4,5,6]))

    2.匿名函数

    lambda函数是一种快速定义单行的最小函数,可以用在
    任何需要函数的地方;

    def fun(x,y):
    return x*y

    lambda版本:
    r=lambda x,y:x*y
    print(r(2,3))
    print(type(r))

    sorted()高阶函数:
    对字典进行排序
    mm=dict(a=1,b=10,c=3,d=9)
    for i in mm:
    print i//打印出来的是键值
    test=sorted(mm,reverse=false)

    for key,value in mm.iteritems:
    print(key,value)

    test=sorted(mm.iteritems,key=lambda d:d[1],reverse=false)
    key:是函数,这里比较时候用匿名函数;

  • 相关阅读:
    XOR Clique
    Live Love
    Wannafly挑战赛24 A:石子游戏
    洛谷 P1060 :开心的金明
    洛谷P1049: 装箱问题
    牛客练习赛26 A:平面
    hihoCoder1151: 骨牌覆盖问题·二
    hihoCoder1143:骨牌覆盖问题·一
    hihoCoder1051 : 补提交卡
    TCP Socket的通讯框架
  • 原文地址:https://www.cnblogs.com/awenxianliao/p/7776388.html
Copyright © 2011-2022 走看看