Python进阶1---高阶函数、柯里化

高阶函数

不相等

 自定义sort函数

内建函数--高阶函数

 

 

#sort函数
def sort2(lst,key = None,reverse = False):
    res = []
    if key is None:
        key =lambda x,y:x<y
    if reverse:
        key = lambda x,y:x>y
    for x in lst:
        for j,y in enumerate(res):
            if key(x,y):
                res.insert(j,x)
                break
        else:
            res.append(x)
    return res
def filter1(predict,lst):#filter1相当于(item for item in iterable if function(item))
    if predict is None:
        predict = bool

    for i in lst:
        if predict(i):
            yield i
#简单实现map函数
def map1(predict,lst):
    for args in lst:
        yield predict(*args)

柯里化Currying

装饰器

 

 

文档符串

 

 

 带参数的装饰器

 functools模块

posted @ 2019-04-03 20:46  小鲨鱼~  阅读(241)  评论(0编辑  收藏  举报