摘要: def wrapper(func): @wraps(func) # 修改名称空间: inner 》 func def inner(*args, **kwargs): ''' 此处是装饰器的注释 :param func: :return: ''' res = func(*args, **kwargs) 阅读全文
posted @ 2019-11-13 21:04 GhostAnt 阅读(162) 评论(0) 推荐(0)
摘要: 无参装饰器: 在调用无参装饰器时,不需要在外层传递参数。 适用于例如: - 为某个函数增加统计运行时间功能 - 为某个函数运行前增加登录认证功能 有参装饰器: 在调用有参装饰器时,对其传入一个或多个参数。 适用于例如: - 验证用户类型 def user_auth(user_group): def 阅读全文
posted @ 2019-11-13 16:47 GhostAnt 阅读(264) 评论(0) 推荐(0)
摘要: 叠加装饰器 当一个函数叠加了多个装饰器后,程序会如何运行呢? 叠加装饰器: 在同一个被装饰对象中,添加多个装饰器,并执行。 @装饰1 @装饰2 @装饰3 def 被装饰对象(): pass 注意: 装饰器在调用被装饰对象时才会执行添加的功能。 装饰的顺序:由下到上(被包裹) 执行的顺序:由上倒下(贯 阅读全文
posted @ 2019-11-13 15:54 GhostAnt 阅读(484) 评论(0) 推荐(0)