博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python疑问7:高阶函数,匿名函数,装饰器,偏函数总结
阅读量:5939 次
发布时间:2019-06-19

本文共 1360 字,大约阅读时间需要 4 分钟。

本文是学习廖雪峰官网网站python教程后总结的,供日后参考用

1.高阶函数
一个函数将另一个函数作为参数,称为高阶函数。当然也可以将一个函数作为结果返回

示例1:将函数作为参数

def add(x,y,f):    return f(x)+f(y)result = add(-3,2,abs)print(result) // 5

示例2:将函数作为结果返回

def func(x,y):    def add():        return x+y    return addf = func(2,3)print(f) // Out:
.add at 0x0000019D1F420158> result = f()print(result) // 5

2.匿名函数

f = lambda x: x*xprint(f) // 
at 0x0000019D1F420158>result = f(5)print(result) //25

3.装饰器

装饰器(decorator)就是一个返回函数的高阶函数,在代码运行期间动态增加功能。
无参数的装饰器示例:

import functoolsdef log(func):    //经过装饰的函数名称发生改变,此方法解决这个问题    @functools.wraps(func)    def wrapper(*args,**kw):        print('call %s:' % func.__name__)        return func(*args,**kw)    return wrapper@logdef now():    print("2018-2-4")now() // call now: 2018-2-4

带参数的装饰器示例:

import functoolsdef log(text):    def decorator(func):        //经过装饰的函数名称发生改变,此方法解决这个问题        @functools.wraps(func)        def wrapper(*args, **kw):            print('%s %s():' % (text, func.__name__))            return func(*args, **kw)        return wrapper    return decorator@log('execute')def now():    print('2015-3-25')now() // execute now(): 2015-3-25

4.偏函数

偏函数就是把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单

import functools//等价于//def int2(x, base=2)://    return int(x, base)int2 = functools.partial(int, base=2)result = int2('100000')print(result) // 32

转载地址:http://mdttx.baihongyu.com/

你可能感兴趣的文章
ADODB.Stream在进行文件上传时报错
查看>>
5.5 数据库约束
查看>>
[Angularjs]单页应用之分页
查看>>
js---对象 和 函数this
查看>>
VC 6.0的简单使用
查看>>
IE6 兼容问题总结
查看>>
[转载] 民兵葛二蛋——第17集
查看>>
[转载] 七龙珠第一部——第004话 掳人的妖怪——乌龙
查看>>
【leetcode】75.Sort Colors
查看>>
2017-2018-1 20155332 《信息安全系统设计基础》课程总结
查看>>
strak组件(8):基本增删改查实现及应用和排序
查看>>
汕头市队赛 SRM 09 C 撕书
查看>>
Xcode常用快捷键
查看>>
如何快速有效的投诉上海移动
查看>>
python3爬虫-下载网易云音乐,评论
查看>>
【文文殿下】[BZOJ4008] [HNOI2015] 亚瑟王
查看>>
31.图片放大镜插件——jqzoom
查看>>
addSubview和insertSubview的区别
查看>>
js___原生js轮播
查看>>
堆排序—Java
查看>>