[Python-Dev] Definining properties - a use case for class decorators? (original) (raw)

Michele Simionato michele.simionato at gmail.com
Tue Oct 18 17:38:40 CEST 2005


On 10/18/05, Antoine Pitrou <solipsis at pitrou.net> wrote:

Le mardi 18 octobre 2005 à 10:57 -0400, Barry Warsaw a écrit : Currently I never use properties, because it makes classes much less readable for the same kind of reasons as what Jim wrote.

Me too, I never use properties directly. However I have experimented with using helper functions to generate the properties:

_dic = {}

def makeproperty(x): def getx(self): return _dic[self, x] def setx(self, value): _dic[self, x] = value return property(getx, setx)

class C(object): x = makeproperty('x')

c = C() c.x = 1 print c.x

But in general I prefer to write a custom descriptor class, since it gives me much more control.

    Michele Simionato


More information about the Python-Dev mailing list