Differences between Class(Object) and Class(Dict) for dictionary usage?
Ian Kelly
ian.g.kelly at gmail.com
Wed Apr 27 10:33:40 EDT 2016
On Tue, Apr 26, 2016 at 9:43 PM, Christopher Reimer
<christopher_reimer at icloud.com> wrote:
> class Test2(dict):
> def __init__(self):
> self.__dict__ = {'key', 'value'}
This class definition looks muddled. Because Test2 inherits from dict,
the object referred to by "self" will be a dict, and self.__dict__ is
actually a *different* dict, containing the attributes of self. The
line:
self.__dict__ = {'key', 'value'}
is essentially equivalent to:
self.key = value
and will be regardless of whether you inherit from object or dict. If
you find this distinction confusing, then I recommend not inheriting
from dict.
More information about the Python-list
mailing list