__call__
方法
对象后面加括号,触发执行
__call__
方法中代码块。
注:构造方法(__init__
)的执行是由创建对象触发的,
即:对象=类名()
;
而对于__call__
方法的执行是由对象后加括号触发,
即:对象()
或者类名()()
class Foo:
def __call__(self,*args,**kwargs):
print('实例执行了')
f = Foo()
f() # '实例执行了' f+()其实是执行了Foo类下的__call__方法