python @property

1.描述符

我们首先要搞懂描述符(Descriptor)是什么.

1.1 描述符定义

只要类中有__get__(), __set__(), 和 __delete__()其中之一的方法.那么它就是一个描述符.

1.2 描述符有什么用?

属性的访问方式不再像普通对象那样访问,普通对象访问是通过__dict__来实现的(取值,赋值,删除),而是通过__get__、__set__、__delete__.

为什么__dict__不好呢?

普通的Python对象操作(get,set,delete)属性时都是在这个对象的__dict__基础之上进行的。而__dict__有查找顺序,基本上就是按照实例,类,父类的顺序.这样其实挺麻烦,好在我们有了描述符,可以不通过__dict__来进行查找.

1.3 描述符怎么实现?

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,242评论 6 13
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,803评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,087评论 19 139
  • 今天是上班的最后一天,通过邮件和各位同事一一道别,收到很多的祝福,业收到很多的疑问,很多人都不理解,为什么我...
    Lisa在路上阅读 219评论 0 0
  • 昨天和康康共读《幼儿园的一天》 断舍离 淘宝 微信 1天 感觉蛮不错的 妈妈思考:知行合一,知道要做到。
    马靖恩阅读 128评论 0 1