__call__


Python从入门到放弃完整教程目录:https://www.cnblogs.com/nickchen121/p/10718112.html

一、__call__

  • 对象后面加括号时,触发执行。
  • 注:构造方法的执行是由创建对象触发的,即:对象 = 类名() ;而对于 __call__ 方法的执行是由对象后加括号触发的,即:对象() 或者 类()()
class Foo:
    def __init__(self):
        print('__init__触发了')

    def __call__(self, *args, **kwargs):

        print('__call__触发了')


obj = Foo()  # 执行 __init__
__init__触发了
obj()  # 执行 __call__
__call__
posted @ 2019-06-08 19:40  B站-水论文的程序猿  阅读(918)  评论(0编辑  收藏  举报