欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

__call__

程序员文章站 2022-03-22 11:54:18
[TOC] \_\_call\_\_ 对象后面加括号时,触发执行。 注:构造方法的执行是由创建对象触发的,即:对象 = 类名() ;而对于 \_\_call\_\_ 方法的执行是由对象后加括号触发的,即:对象() 或者 类()() __init__触发了 __call__ ......

目录

__call__

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

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

class foo:
    def __init__(self):
        print('__init__触发了')

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

        print('__call__触发了')


obj = foo()  # 执行 __init__
__init__触发了
obj()  # 执行 __call__
__call__