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

Какие знаешь инструменты для создания абстрактного класса в Python

В Python можно создать абстрактный класс с помощью модуля abc (Abstract Base Classes). Основные инструменты:

  1. ABC – базовый класс для создания абстрактных классов.
  2. @abstractmethod – декоратор для обозначения абстрактных методов.

Пример:

python
from abc import ABC, abstractmethod

class Animal(ABC):
    @abstractmethod
    def make_sound(self):
        pass

class Dog(Animal):
    def make_sound(self):
        return "Woof!"

# Попытка создать экземпляр без реализации метода вызовет TypeError
# animal = Animal()  # Ошибка!
dog = Dog()  # OK
print(dog.make_sound())  # Выведет: Woof!

Нюансы:

  • Нельзя создать экземпляр абстрактного класса, пока не реализованы все @abstractmethod.
  • Можно добавлять обычные методы и свойства.
  • Наследование от ABC можно заменить метаклассом ABCMeta.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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