__slots__
Aahz
aahz at pythoncraft.com
Fri Mar 24 12:10:12 EST 2006
In article <sFKUf.12114$wD1.3624 at trnddc02>,
David Isaac <aisaac0 at verizon.net> wrote:
>"Ziga Seilnacht" <ziga.seilnacht at gmail.com> wrote:
>>
>> If you want to restrict attribute asignment, you should use the
>> __setattr__ special method, see:
>> http://docs.python.org/ref/attribute-access.html
>
>That "should" is what I am asking about. If I understand,
>in the simplest case, you want me to say something like
> def __setattr__(self,name,value):
> if name in myattrlist:
> object.__setattr__(self,name,value)
> else:
> raise AttributeError
>instead just saying
> __slots__ = myattrlist
>I understand that this *is* the prevailing advice. But why?
Because __slots__ breaks with inheritance.
--
Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/
"Look, it's your affair if you want to play with five people, but don't
go calling it doubles." --John Cleese anticipates Usenet
More information about the Python-list
mailing list