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

Каким образом можно получить полиморфное поведение в Python

В Python полиморфизм достигается через утиную типизацию и наследование. Основные способы:

  1. Переопределение методов в дочерних классах:
python
class Animal:
    def speak(self):
        raise NotImplementedError

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

class Cat(Animal):
def speak(self):
return "Meow!"

text

2. Утиная типизация - объекты с одинаковыми методами работают одинаково:
```python
def make_sound(obj):
    print(obj.speak())

make_sound(Dog())  # Woof!
make_sound(Cat())  # Meow!
  1. Перегрузка операторов через магические методы (add, len и др.)

  2. Использование абстрактных базовых классов (ABC) для явного определения интерфейсов

Python реализует полиморфизм через протоколы - если объект поддерживает нужный метод/операцию, он может быть использован в соответствующем контексте.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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