Python进阶-----__call__方法

__call__方法

对象后面加括号,触发执行。

 注:构造方法(__init__)的执行是由创建对象触发的,即:对象=类名();
 而对于__call__方法的执行是由对象后加括号触发,即:对象()或者类名()()

1 class Foo:
2     def __call__(self,*args,**kwargs):
3         print('实例执行了')
4 
5 f = Foo()
6 f()     #  '实例执行了'     f+()其实是执行了Foo类下的__call__方法

 

posted @ 2018-11-01 10:44  Meanwey  阅读(316)  评论(0编辑  收藏  举报