#1.__call__方法:里里面有__call__方法,类创建的对象就是可调用的对象
class Call(object):
def __call__(self, *args, **kwargs):
print("call方法")
c = Call()
c() #可直接调用__call__方法
#2.定义类装饰器
class ch(object):
def __init__(self, fn): #fn=comment
self.__fn = fn
def __call__(self, *args, **kwds):
print("登录")
self.__fn() #self.__fn() = comment()
#1.在类中使用call方法,把类的实例变成可调用对象
#2.类装饰器装饰函数功能在call方法里面进行 添加
@ch #comment = ch(comment)
def comment1():#被装饰函数
print("评论1")
def comment2():#被装饰函数
print("评论2")
comment1()
comment2()