Поддерживает ли Python интерфейсы, например, в Java или C #?
Нет, у python нет никакого эквивалента интерфейсов. Поскольку Python поддерживает множественное наследование, вы можете легко эмулировать эквивалентность интерфейсов. Это означает, что интерфейсы неявны в Python: если объект соответствует интерфейсу, вы можете его использовать, нет необходимости объявлять его так же, как на статически типизированных языках, таких как Java или C #.
Наиболее близким, вероятно, является модуль абстрактных базовых классов, который позволяет вам определять общие методы для набора классов.
class Abstract: def myFunc(self): raise NotImplementedError("The method not implemented")
Может быть, вы можете использовать что-то вроде выше. Это будет действовать как абстрактный класс. Поэтому каждый подкласс вынужден реализовать myFunc().
Интерфейсы - это концепции, которые относятся к статически типизированным языкам, таким как Java или C #, и на самом деле не применяются к динамическому языку, например Python.