对象的创建和销毁
__new__(cls[,*args, **kwargs]) 创建新实例时调用的类方法(这个在__init__())的前面调用
__init__(self [,*args, **kwargs]) 初始化新实列时调用
__del__(self) 销毁对象时调用
如下方法用于创建对象的各种字符串表示:
__format__(self, format_spec) 创建格式化后的表示
__repr__(self) 创建对象的字符串表示
__str__(self) 创建简单的字符串表示
属性访问
__getattribute__(self, name) 返回属性 self.name
__getattr__(self, name) 返回属性name,如果通过属性未找到,则引发AttributeError异常
__setattr__(self, name, value) 设置属性self.name = name 覆盖默认值
__delattr__(self, name) 删除属性self.name
class Foo(object):
def __init__(self,name):
self.name = name
>>> c = Foo('jack')
>>> c.name
'jack'
>>> c.__getattribute__('name')
'jack'
>>> c.__setattr__('name','peky')
>>> c.name
'peky'
>>> c.__delattr__('name')