#参数化装饰器
def tags(tag):
def tag_decorator(func):
def wrapper(*args, **kwargs):
return f’<{tag}>{func(*args, **kwargs)}</{tag}>’
return wrapper
return tag_decorator
class P:
def init(self,func):
self.func = func
def call(self,*args,**kwargs): #__call__是调用的意思
return ‘
’ + self.func(*args,**kwargs) + ‘
’class Student:
def init(self,name):
self.name = name
def get_name(self):
return self.name.upper()
def get_text():
return ‘welcome’
@tags(‘div’)
@tags(‘p’)
def get_upper_text(text):
return text.upper()
if name ==‘main’:
print(get_upper_text(‘hello’))