Ponche de pato en una propiedad en python

Me gustaría poder agregar una propiedad http://docs.python.org/library/functions.html#property a un objeto (una instancia específica de una clase). es posible?

Algunas otras preguntas sobre la perforación de patos / parches de monos en python:

Adición de un método a una instancia de objeto existente

Python: cambio de métodos y atributos en tiempo de ejecución

ACTUALIZACIÓN: Respondida por delnan en los comentarios.

Añadiendo dinámicamente @property en python

El siguiente código funciona:

#!/usr/bin/python class C(object): def __init__(self): self._x = None def getx(self): print "getting" return self._x def setx(self, value): print "setting" self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I'm the 'x' property.") s = C() sx = "test" Cy = property(C.getx, C.setx, C.delx, "Y property") print sy 

Pero no estoy seguro de que debas hacerlo.

 class A: def __init__(self): self.a=10 a=A() print a.__dict__ b=A() setattr(b,"new_a",100) print b.__dict__ 

Espero que esto resuelva tu problema.

 a.__dict__ #{'a': 10} b.__dict__ #{'a': 10, 'new_a': 100}