class Person:
"""
定义类型的时候实现__call__()函数,这个类就成为可调用的
"""
#__init__()方法除了self外的参数都和__new__()方法中除了cls参数外的参数保持一致
def __init__(self,*args,**kwargs) -> None:
"""
实例对象初始化
"""
super(Person,self).__init__()
def __new__(cls,*args,**kwargs):
"""
__new__()方法最先被调用返回一个实例对象
"""
return super(Person, cls).__new__(cls)
def __call__(self, *args, **kwargs):
"""
可以使类的实例像函数一样被调用
"""
print(args,kwargs)
p = Person()
p(100,name_="peter")