Для чего нужна абстракция

Python Middle Без компании
Для чего нужна абстракция
Ответы
Абстракция в Python (и программировании в целом) позволяет скрыть сложную реализацию, предоставляя только необходимый интерфейс для работы. Это упрощает использование кода, уменьшает сложность и повышает переиспользуемость. **Пример:** ``` from abc import ABC, abstractmethod class Animal(ABC): @abstractmethod def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Woof!" class Cat(Animal): def make_sound(self): return "Meow!" # Использование абстракции def animal_sound(animal: Animal): print(animal.make_sound()) dog = Dog() cat = Cat() animal_sound(dog) # Woof! animal_sound(cat) # Meow! ``` Здесь `Animal` — абстрактный класс, который определяет общий интерфейс (`make_sound`), а конкретные классы (`Dog`, `Cat`) реализуют его. Это позволяет работать с любыми животными единообразно.