python 描述器 详解(Python描述符的两种类型)
导读:1、分类...
1 、分类
数据描述符:实现了__get__ 和 __set__ 两种方法的描述符
非数据描述符:只实现了__get__ 一种方法的描述符
2 、实例
#数据描述符 classDataDes: def__init__(self,default=0): self._score=default def__set__(self,instance,value): self._score=value def__get__(self,instance,owner): print("访问数据描述符里的__get__") returnself._score #非数据描述符 classNoDataDes: def__init__(self,default=0): self._score=default def__get__(self,instance,owner): print("访问非数据描述符里的__get__") returnself._score classStudent: math=DataDes(0) chinese=NoDataDes(0) def__init__(self,name,math,chinese): self.name=name self.math=math self.chinese=chinese def__getattribute__(self,item): print("调用__getattribute__") returnsuper(Student,self).__getattribute__(item) def__repr__(self): return"<Student:{},math:{},chinese:{},>".format( self.name,self.math,self.chinese)以上就是Python描述符的两种类型 ,希望对大家有所帮助 。更多Python学习推荐:python教学
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!