From 3de1e69dc7adc3eff84e0c1b8b22b4abdc58d268 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sat, 19 Jul 2008 13:09:42 +0000 Subject: #3323: mention that if inheriting from a class without __slots__, the subclass will have a __dict__ available too. --- Doc/reference/datamodel.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index bf9287c..9e28fe9 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1600,6 +1600,10 @@ variable. Space is saved because *__dict__* is not created for each instance. Notes on using *__slots__* +* When inheriting from a class without *__slots__*, the *__dict__* attribute of + that class will always be accessible, so a *__slots__* definition in the + subclass is meaningless. + * Without a *__dict__* variable, instances cannot be assigned new variables not listed in the *__slots__* definition. Attempts to assign to an unlisted variable name raises :exc:`AttributeError`. If dynamic assignment of new -- cgit v0.12