首页 > 编程语言 > 详细

python回顾(十一)——对象管理

时间:2018-12-15 15:20:06      阅读:175      评论:0      收藏:0      [点我收藏+]

对象的创建

__new__方法作用

 

  __new__方法用于定义创建对象时执行的操作,__new__方法仅仅为用户提供一个创建对象时干预的入口,真正执行创建对象的操作由object类中的__new__方法完成

 

 

__new__方法定义

 

  定义__new__方法是对object类中__new__方法的重写,重写该方法时必须再次调用object类中的__new__方法

 技术分享图片

 

__new__方法调用

  __new__方法在创建对象时自动运行,无需手工执行调用该方法

 

 

 

 

对象的删除

del操作作用

  del操作的实质是断开变量与内存数据之间的引用,操作del执行后等同于对应变量未进行过定义

 

del操作执行范围

  1,删除定义的变量:功能等同于变量未定义

  技术分享图片

 

  2,删除存储模型中的数据:将数据按照变量的形式看待,功能等同于未定义过对应的数据

      列表数据报错:索引不存在

      技术分享图片

      元组对象报错:元组对象不支持对项的删除

      技术分享图片

 

      字典对象报错:键错误,键不存在

       技术分享图片

 

      对象中的属性:对应对象等同于该对象未定义过该属性

       技术分享图片

 

__del__方法作用

  __del__方法用于定义对象不存在任何引用时执行的操作。当对象断开了与最后一个变量之间的引用关系时,将执行该对象的__del__方法

 

__del__方法执行范围

  1.当手工执行断开变量与对象的最后一个引用时执行,即del操作

  2.当程序执行完毕时,所有变量对应的引用都断开,此时执行,即退出程序

 

__del__方法调用

  __del__方法在对象断开与最后一个变量之间的引用关系时自动执行,无需手工执行调用该方法

 

 

 

对象判断

对象判等概念

  当两个对象对应的引用地址相同时,称这两个对象是同一个对象

 

对象判等语法格式

  对象引用地址判等:

    对象名 is 对象名 或 变量名 is 变量名

  数据引用地址判定:

    数据 is 数据

  注:判等操作的结果是True或False

    3.3 ==与is的区别

 

  ==操作针对判定内容不同规则不同。例如数值性数据比较数值大小不考虑是整数还是小数。字符串比较字符串的内容是否相同,不考虑引用地址是否相同

  is操作只针对地址进行判定,只要地址相同返回True,否则返回False

 

 

 

单例模式

单例模式的作用

  控制一个类只能创建出单个实例对象

  技术分享图片

 

单例模式书写规范

 

注意事项

  1.定义的类变量要进行私有化,否则可以通过类名在类的外部访问到

  2.对象的判空操作使用is进行判定

 

 

python回顾(十一)——对象管理

原文:https://www.cnblogs.com/sickle/p/10123376.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!