__call__ 方法
__call__ 是 Python 中的一个魔法方法,也称为类方法。
它的作用是将类的实例变成可调用对象,类似于像函数一样被调用。
- __call__ 使用举例
class MyClass:def __call__(self, x, y):return x + yobj = MyClass()
print(obj(1, 2))
-
对比其他类/对象的使用
class MyClass:def add(self, x, y):return x + yobj = MyClass()
print(obj.add(1, 2))
所以,不用像普通对象调用方法,不用写成 :obj.__call__(1, 2)
,
而是像直接使用函数一样,直接使用 obj(1, 2)
即可