首页 > 文章列表 > python类装饰器如何使用?

python类装饰器如何使用?

python类装饰器
308 2022-08-07

1、类H1的两个方法:

__init__:接收一个函数作为参数,就是待被装饰的函数;

__call__:让类对象可以调用,类似函数调用,触发点是被装饰的函数调用时触发。

2、实例

基于类的装饰器与基于函数的基本用法一致。

class H1(object):
    def __init__(self, func):
        self.func = func
 
    def __call__(self, *args, **kwargs):
        return '<h1>' + self.func(*args, **kwargs) + '</h1>'
 
@H1
def text(name):
    return f'text {name}'
 
s = text('class')
print(s)