欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
1、attr 系列
 
2、item 系列
 
__ setitem __ (self,key,value):当对类中的某个属性进行"赋值"时触发的函数(只有使用字典赋值的方式时才会触发此方法的执行)
 
与Attr系列的区分: __ setattr __ (self):是在对象打点儿的方式赋值时,才会触发的方法
 
__ delitem __ (self,key):当类中的某个属性被删除时,触发此方法(只有使用del字典方式删除属性时,才会触发此方法)
 
与Attr系列的区分: __ delattr __ (self):使用del类打点儿属性的方式删除属性,才会触发此方法
 
getitem(self,item):当调用类中的属性或方法时触发此方法的执行(只在使用类[key]字典的方式调用时,才会触发此方法)
 
与Attr系列的区分:其实这里已经很明显了,getattr(self):是类打点儿调用且命名空间没有发现名字的情况下,触发此方法
 
3、slots
 
slots:其实就是将类中的名称锁定,实例化对象,只可以赋值和调用,不可以删除属性和增加新的属性
 
应用场景:当实例化几万个对象的时候,每个对象都会生成一个名称空间dict,而每一个名称空间都会各自占用一个内存,造成内存的浪费,用 slots,不用再产生 dict 了,省内存,对象的 dict 都统一用类的 dict,属性都是用 slots 给定义的
 
例1
 
例2
 
4、next 和 iter
 
5、del
 
这个是在回收实例化对象时触发执行的方法
 
每当 del 实例化对象时会触发
 
或者是程序结束时,会触发,总之就是实例化对象失效时都会执行del方法
 
注:此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,析构函数的调用是由解释器在进行垃圾回收时自动触发执行的
 
6、str
 
7、enter和exit
 
所谓上下文管理协议,就是咱们打开文件时常用的一种方法:with
 
__ enter __ (self):当with开始运行的时候触发此方法的运行
 
__ exit __ (self, exc_type, exc_val, exc_tb):当with运行结束之后触发此方法的运行
 
exc_type如果抛出异常,这里获取异常的类型
 
exc_val如果抛出异常,这里显示异常内容
 
exc_tb如果抛出异常,这里显示所在位置
 
用途或者说好处:
 
1.使用with语句的目的就是把代码块放入with中执行,with结束后,自动完成清理工作,无须手动干预
 
2.在需要管理一些资源比如文件,网络连接和锁的编程环境中,可以在exit中定制自动释放资源的机制,你无须再去关系这个问题,这将大有用处
 
例1
 
例2
 
8、doc
 
描述信息用的
 
9、call
 
对象后面加括号,触发执行。
 
注:构造方法的执行是由创建对象触发的,即:对象 = 类名() ;而对于 call 方法的执行是由对象后加括号触发的,即:对象() 或者 类()()

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h64143.shtml