>[success] # 编写类装饰器 ~~~ 1.类装饰两种,一种是对象封装的,一种是类本身的装饰器 ~~~ >[danger] ##### 案例 ~~~ from functools import wraps class A: def decorator1(self,func): @wraps(func) def wapper(*args, **kwargs): print("这是一个类的对象装饰器") return func(*args, **kwargs) return wapper @classmethod def decorator2(cls, func): @wraps(func) def wapper(*args, **kwargs): print("这是一个类的类装饰器") return func(*args, **kwargs) return wapper a = A() @a.decorator1 def spam():pass @A.decorator2 def spam1():pass spam() spam1() 打印结果: 这是一个类的对象装饰器 这是一个类的类装饰器 ~~~