码迷,mamicode.com
首页 > 编程语言 > 详细

Python的__getattr__和__getattribute__

时间:2019-02-10 23:05:46      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:attribute   get   error   访问   matrix   多实例   com   重载   logs   

__getattr__
__getattr__在当前主流的Python版本中都可用,重载__getattr__方法对类及其实例未定义的属性有效。也就属性是说,如果访问的属性存在,就不会调用__getattr__方法。这个属性的存在,包括类属性和实例属性。

 

__getattribute__
__getattribute__仅在新式类中可用,重载__getattrbute__方法对类实例的每个属性访问都有效。

 

另外,当同时定义__getattribute__和__getattr__时,__getattr__方法不会再被调用,除非显示调用__getattr__方法或引发AttributeError异常。

 

更多实例见:https://www.cnblogs.com/blackmatrix/p/5681480.html

Python的__getattr__和__getattribute__

标签:attribute   get   error   访问   matrix   多实例   com   重载   logs   

原文地址:https://www.cnblogs.com/Stephen-Qin/p/10360553.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!