Ken Starks wrote:
I have a class with an attribute called 'gridsize' and I want
a derived class to force and keep it at 0.8 (representing 8mm).
Is this a correct, or the most pythonic approach?
####################
def __getattr__(self,attrname):
if attrname == 'gridsize':
return 0.8
def __setattr__(self,attrname,value):
if attrname == 'gridsize':
pass
else:
self.__dict__[attrname]=value
#####################
Cheers,
Ken.
Perhaps I should mention the alternative I had in mind:
###################
class xyz:
def __init__(self):
self.__dict__['a'] = 123
self.b=456
def __setattr__(self,attrname,value):
if attrname == 'a':
pass
else:
self.__dict__[attrname]=value
# __getattr__() not redefined.
############################
--
http://mail.python.org/mailman/listinfo/python-list