类装饰器

class Decorator:
def __init__(self, func):
self.func = func

def __call__(self, *args, **kwargs):
print('-----call-----')
return self.func(*args, **kwargs)


@Decorator
class MyClass:
pass

@Decorator
class MyClass1:
def __init__(self,name):
self.name = name


print(type(MyClass()))

print(MyClass1("haha").name)

打印结果:

-----call-----
<class '__main__.MyClass'>
-----call-----
haha

posted @ 2022-04-22 18:58  狒狒桑  阅读(18)  评论(0)    收藏  举报