change property after inheritance
Steven Bethard
steven.bethard at gmail.com
Thu Sep 7 09:33:22 EDT 2006
David Isaac wrote:
> Le mercredi 06 septembre 2006 16:33, Alan Isaac a écrit :
>>> Suppose a class has properties and I want to change the
>>> setter in a derived class. If the base class is mine, I can do this:
>>> http://www.kylev.com/2004/10/13/fun-with-python-properties/
>>> Should I? (I.e., is that a good solution?)
>
> "Maric Michaud" <maric at aristote.info> wrote in message
> news:mailman.82.1157557490.5279.python-list at python.org...
>> Why not ? This ontroduce the notion of public getter a la C++/Java while
> the
>> property is overloadable by itself (as below), but it's correct design
> IMHO.
>
> More support for lambda, it seems...
Well, lambda's not going away[1], but there's no *need* for lambda here.
It could be written as::
class Base(object):
def __init__(self):
self.foo = None
def getFoo(self):
return self.__foo
def setFoo(self, val):
self.__foo = val
def _prop_get_foo(self):
return self.getFoo()
def _prop_set_foo(self, val):
return self.setFoo(val)
foo = property(fget=_prop_get_foo, fset=_prop_set_foo)
[1] http://www.python.org/dev/peps/pep-3099/
STeVe
More information about the Python-list
mailing list