1.__str__
__str__的功能,如果定义了该函数,当print当前实例化对象的时候,会返回该函数的return信息
__str__的用法
用法:
class Test(object):
def __str__(self):
return '这是描述'
test = Test()
print(test)
2.__getattr__
功能:当调用的属性或者方法不存在时,会返回该方法定义的信息
class Test2(object):
def __getattr__(self,key):
print('这个key:{}不存在'.format(key))
a = Test2()
print(a.w)
3.__setattr__
功能:拦截当前类中不存在的属性和值
class Test3(object):
def __setattr__(self, key, value):
print(key,value)
t=Test3()
t.name = '夏末'
print(t.name)
# 打印结果 name 夏末
4.__call__
功能:将一个类变成一个函数
class Test3(object):
def __call__(self, a):
print(a)
t = Test3()
t('测试')
#打印结果 测试