# 主要练习给装饰器传参
def get_choice_text(title, field):
def inner(self, obj=None, is_header=None):
if is_header:
return title
method = "get_%s_method" % field
return getattr(obj, method)()
return inner
class Example:
def __init__(self,name):
self.name = name
def get_fff_method(self):
return self.name
if __name__ == '__main__':
a = Example("haode")
# 获取装饰器对象
bb = get_choice_text("zxc","fff")
# 给装饰器对象传参
print(bb("中",a,"fff")) > zxc
print(bb(None,a,False)) > haode