Встречается на собеседованиях • сегодня

Что такое интерфейсы

В Python интерфейсы реализуются неявно через абстрактные базовые классы (ABC) из модуля abc. Интерфейс определяет контракт — набор методов, которые должны быть реализованы в классах-наследниках.

Пример:

python
from abc import ABC, abstractmethod

class Shape(ABC):
    @abstractmethod
    def area(self):
        pass

class Circle(Shape):
def init(self, radius):
self.radius = radius

text
def area(self):
    return 3.14 * self.radius ** 2

Нельзя создать экземпляр Shape(), только наследников с реализованными методами

circle = Circle(5)
print(circle.area()) # 78.5

text

Ключевые моменты:  
- Интерфейс гарантирует наличие методов в классах-потомках.  
- Использует декоратор `@abstractmethod`.  
- Попытка создать экземпляр ABC с нереализованными методами вызовет `TypeError`.  
- В отличие от Java, Python не имеет синтаксиса `interface`, но ABC эмулируют эту функциональность.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы