Python_装饰器
【是什么】
不改变原函数的情况下,在函数前后增加一些内容 即装饰器。如计算函数的运行时间
装饰器的主要结构
def 外层函数(参数): def 内层函数(*arg, **kwargs): return 参数(*arg, **kwargs) return 内层函数
装饰器的使用
@装饰器外层函数名 def 被装饰的函数名(): 函数内容
@装饰器名称 两个作用
1. 将下面的函数当做参数传入装饰器函数中
2. 将装饰器函数的返回值重新复制给下面的函数
示例
def func(fun): def inner(): print('before') v = fun() print('after') return v return inner @func def fun1(): print(123)
执行 fun1 其实是执行了装饰器内部的inner函数,inner函数内部包含了fun1函数,同时在fun1函数前后增加了需要的内容
当遇到多函数需要执行相同操作时,可以考虑装饰器,能够不改变函数自身,同时增加需要的内容,后期也方便维护
posted on 2019-10-04 09:29 wangxiaobei2019 阅读(204) 评论(0) 编辑 收藏 举报