__call__方法的作用:
使得“对象”具备当做函数来调用的能力
__call__方法的使用:
当我们使用下面的代码直接调用创建出来的实例时,会报TypeError: ‘Person’ object is not callable错误:
class Person:
pass
p = Person()
p()
当使用__call__方法时,就可以直接调用创建出来的实例:
class Person:
def __call__(self, *args, **kwargs):
print("这是call方法:", args, kwargs)
pass
p = Person()
p(23, 89030, name='李磊')