У меня есть следующий вид настройки суперкласса/подкласса:
class SuperClass(object):
def __init__(self):
self.do_something() # requires the do_something method always be called
def do_something(self):
raise NotImplementedError
class SubClass(SuperClass):
def __init__(self):
super(SuperClass, self).__init__() # this should do_something
def do_something(self):
print "hello"
Я хотел бы, чтобы инициализация SuperClass всегда вызывала еще не реализованный метод do_something. Я использую питон 2.7. Возможно, ABC может это сделать, но есть ли другой способ?
Спасибо.