Using special methods for attribute access
We'll look at the three canonical special methods for attribute access: __getattr__()
, __setattr__()
, and __delattr__()
. Additionally, we'll acknowledge the __dir__()
method to reveal attribute names. We'll defer __getattribute__()
to the next section.
The default behavior shown in the first section is as follows:
- The
__setattr__()
method will create and set attributes. - The
__getattr__()
method will do two things. Firstly, if an attribute already has a value,__getattr__()
is not used; the attribute value is simply returned. Secondly, if the attribute does not have a value, then__getattr__()
is given a chance to return a meaningful value. If there is no attribute, it must raise anAttributeError
exception. ...
Get Mastering Object-oriented Python now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.