def print(self, document): pass
class Scanner:
@abstractmethod
def scan(self, document): pass
# same for Fax, etc.
class MyPrinter(Printer):
def print(self, document):
print(document)
class Photocopier(Printer, Scanner):
def print(self, document):
print(document)
def scan(self, document):
pass # something meaningful
Вот так код пишут?
Разве?
TypeError: Can't instantiate abstract class AbstractFactory with abstract method foo
Ну так я просто наследуюсь от него и определяю те методы которые различаются, а общий функционал не трогаю
class A(ABC): @abstractmethod def foo(self): pass class B(A): def foo(self): super().foo()
Обсуждают сегодня