new:生成实例
init:生成实例的属性
call:实例对象加( )会执行def call:... 方法里边的内容。
del:析构方法,当对象在内存中被释放时,自动触发执行。如当 del obj 或者应用程序运行完毕时,执行该方法里边的内容。
enter和exit:出现with语句,对象的enter被触发,有返回值则赋值给as声明的变量;with中代码块执行完毕时执行exit里边的内容。
module:表示当前操作的对象在那个模块 obj.moduleclass :表示当前操作的对象的类是什么 obj.class
doc:类的描述信息,该描述信息无法被继承
str:改变对象的字符串显示 print函数 --->obj.str()repr:改变对象的字符串显示 交互式解释器 --->obj.repr()format:自定制格式化字符串
slots:一个类变量 用来限制实例可以添加的属性的数量和类型
setitem,getitem,delitem__:
class Foo: def __init__(self,name): self.name=name def __getitem__(self, item): print(self.__dict__[item]) def __setitem__(self, key, value): self.__dict__[key]=value def __delitem__(self, key): print('del obj[key]时,我执行') self.__dict__.pop(key) def __delattr__(self, item): print('del obj.key时,我执行') self.__dict__.pop(item)f1=Foo('sb')f1['age']=18f1['age1']=19del f1.age1del f1['age']f1['name']='alex'print(f1.__dict__)
get():调用一个属性时,触发set():为一个属性赋值时,触发delete():采用del删除属性时,触发
setattr,delattr,getattr :



