Писал ли абстрактные классы

Python Middle Без компании
Писал ли абстрактные классы
Ответы
Да, писал. Абстрактные классы в Python создаются с помощью модуля `abc` (Abstract Base Classes). Они используются, когда нужно определить интерфейс, который должны реализовать дочерние классы, но нельзя создавать экземпляры самого абстрактного класса. Пример: ``` from abc import ABC, abstractmethod class Animal(ABC): @abstractmethod def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Woof!" # animal = Animal() # Ошибка: нельзя создать экземпляр абстрактного класса dog = Dog() print(dog.make_sound()) # Вывод: "Woof!" ``` Ключевые моменты: - Используется декоратор `@abstractmethod` для обозначения абстрактных методов. - Дочерние классы обязаны реализовать все абстрактные методы. - Попытка создать экземпляр абстрактного класса вызовет `TypeError`. Абстрактные классы полезны для обеспечения единого интерфейса и предотвращения ошибок в архитектуре.