🔄 ¿Qué es el polimorfismo en Python?
El polimorfismo es un principio de la programación orientada a objetos que permite que un mismo método se comporte de forma diferente según el objeto que lo invoque.
📘 Definición sencilla:
Polimorfismo significa que varias clases pueden compartir el mismo método, pero con una implementación distinta en cada una.
🧩 Ejemplo de la vida real:
Imagina el método hablar()
. Tanto un perro como un gato pueden «hablar», pero cada uno lo hace a su manera. El método se llama igual, pero el resultado cambia según el objeto.
🐍 Ejemplo de polimorfismo en Python
class Animal:
def hablar(self):
pass
class Perro(Animal):
def hablar(self):
print("¡Guau!")
class Gato(Animal):
def hablar(self):
print("¡Miau!")
def hacer_hablar(animal):
animal.hablar()
🔍 ¿Qué ocurre aquí?
Perro
yGato
heredan deAnimal
.- Ambas clases implementan el método
hablar()
a su manera. - La función
hacer_hablar()
acepta cualquier objetoAnimal
, sin importar su tipo exacto. - Eso es polimorfismo: mismo método, múltiples comportamientos.
📘 Utilización
animales = [Perro(), Gato()]
for animal in animales:
hacer_hablar(animal)
📝 Salida
¡Guau!
¡Miau!
🎯 ¿Para qué sirve el polimorfismo?
- Para reducir el acoplamiento entre clases.
- Para escribir código más genérico y reutilizable.
- Para trabajar con objetos de diferentes tipos de manera uniforme.
✅ Conclusión
El polimorfismo en Python permite que distintos objetos respondan de manera diferente al mismo método, haciendo tu código más flexible, reutilizable y escalable. Gracias a este principio, puedes escribir funciones que trabajen con múltiples tipos de objetos sin preocuparte por sus clases específicas, lo que facilita el desarrollo de aplicaciones más limpias y robustas.