Метод не существует в классе украшается.

hon 2.5 есть ли способ создать декоратор, который украшает класс? В частности, я хочу использовать декоратор, чтобы добавить члена в класс и изменить конструктор, чтобы принять значение для этого члена.

Ищем что-то вроде следующего (с синтаксической ошибкой в ​​'class Foo:':

def getId(self): return self.__id

class addID(original_class):
    def __init__(self, id, *args, **kws):
        self.__id = id
        self.getId = getId
        original_class.__init__(self, *args, **kws)

@addID
class Foo:
    def __init__(self, value1):
        self.value1 = value1

if __name__ == '__main__':
    foo1 = Foo(5,1)
    print foo1.value1, foo1.getId()
    foo2 = Foo(15,2)
    print foo2.value1, foo2.getId()

Я думаю, что мне действительно нужно, это способ сделать что-то вроде интерфейса C # в Python. Я должен изменить свою парадигму, я полагаю.

Ответы на вопрос(6)

Ваш ответ на вопрос