Subclasse da propriedade `python`
Em uma das minhas aulas, tenho várias propriedades que fazem coisas muito semelhantes na obtenção e configuração. Então eu abstraí os argumentos paraproperty
em uma função de fábrica:
def property_args(name):
def getter(self):
# do something
return getattr(self, '_' + name)
def setter(self, value)
# do something
setattr(self, '_' + name, value)
return getter, setter
class MyClass(object):
def __init__(self):
self._x = None
x = property(*property_args('x')) # obviously there's more than one of these IRL
No entanto, descobri desde entãoproperty
é de fato uma classe, e subclasse seria perfeito para isso. Não consigo encontrar nada na documentação que explique o que preciso substituir (e as assinaturas de argumento de__init__
etc), e eu realmente não quero ter que ir caçar no código-fonte C para isso. Alguém sabe onde posso encontrar essa informação?