python 装饰器函数基础知识
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | 1. 装饰器的本质 - - 一个闭包函数 2. 装饰器的功能 - - 在不改变原函数及其调用方式情况下对原函数功能进行拓展 3. 带参数和返回值的装饰器 def timer(func): @wraps (func) #使这些函数生效 __doc__ 查看函数注释信息 __name__ 查看函数名 def inner( * args, * * kwargs): start = time.time() re = func( * args, * * kwargs) print (time.time() - start) return re return inner 4. 装饰器函数有形参 def outer(flag): def timer(func): def inner( * args, * * kwargs): if flag: print ( '''执行函数之前要做的''' ) re = func( * args, * * kwargs) if flag: print ( '''执行函数之后要做的''' ) return re return inner return timer 5. 多个装饰器装饰同一个函数 执行顺序: 1. 执行第 1 个装饰器函数前的部分 2. 执行第 2 个装饰器函数前部分 3. 执行第 2 个装饰器函数后的部分 4. 执行第 1 个装饰器函数后的部分 |
生命很短,请让生活更精彩一些!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步