Python 中__call__方法
python的类中提供了__call__方法,可以允许调用可以创建的对象和实例,若在定义类时,实现了__call__方法,那么就可以像使用函数一样使用类。
那么,就意味着class()和class.__call__() 作用是相同的。
class Myclass:
def __init__(self, x, y):
'''初始化'''
self.x = x
self.y = y
def __call__(self, sum):
if sum == self.x + self.y:
return Ture
else:
return False
a = Myclass(1, 1) # 创建实例对象
print(a(2)) # 调用call方法
#######
True