Will McGugan wrote:
Hi,
Is there any way of making properties using a decorator? The current way
of creating a property seems inelegant.
Something like this imaginary snippit would be nice, IMHO.
class C(object):
@make_property
def x(self):
def getx(self): return self.__x
def setx(self, value): self.__x = value
def delx(self): del self.__x
Posted too soon. Played with the above and got something which works.
def make_property( func ):
return property( *func() )
class C(object):
def __init__(self):
__x= 1
@make_property
def x():
def getx(self): return self.__x
def setx(self, value): self.__x = value
def delx(self): del self.__x
return getx,setx,delx
c= C()
c.x= 5
n= c.x + 5
Good idea, or bad?
Will McGugan
--
http://mail.python.org/mailman/listinfo/python-list