Herencia
Aprenda a reutilizar y ampliar funcionalidades mediante la herencia
Herencia es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 3 de 6. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 6 lecciones en total.
Introducción a la herencia
Introducción a la herencia
La herencia es un concepto fundamental de la programación orientada a objetos (OOP) que permite que una clase (subclase) herede atributos y métodos de otra clase (superclase). Promueve la reutilización del código y hace que este esté mejor organizado.
En esta lección, aprenderá a implementar la herencia en Python y comprenderá sus ventajas.

Definir una superclase
Definir una superclase
Una superclase es la clase base de la que heredan otras clases. Se define como cualquier otra clase:
# Defining a superclass
class Animal:
def speak(self):
print("Animal speaks")Crear una subclase
Crear una subclase
Una subclase hereda atributos y métodos de una superclase. Para definir una subclase, indique el nombre de la superclase como parámetro:
# Defining a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")Sobrescribir métodos
Sobrescribir métodos
Una subclase puede sobrescribir los métodos de la superclase para proporcionar un comportamiento específico:
# Overriding methods in a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")
animal = Animal()
animal.speak() # Outputs: Animal speaks
dog = Dog()
dog.speak() # Outputs: Dog barksUsar la función super()
Usar la función super()
La función super() permite llamar a métodos de la superclase desde la subclase:
# Using super() to call superclass methods
class Dog(Animal):
def speak(self):
super().speak()
print("Dog barks")Herencia múltiple
Herencia múltiple
Python admite la herencia múltiple, en la que una subclase puede heredar de más de una superclase:
# Example of multiple inheritance
class Flyer:
def fly(self):
print("Flying")
class Swimmer:
def swim(self):
print("Swimming")
class Duck(Flyer, Swimmer):
passComprobar las relaciones entre clases
Comprobar las relaciones entre clases
Puede comprobar las relaciones entre clases mediante las funciones isinstance() e issubclass().
# Checking class relationships
# Checking if an object is an instance of a class
print(isinstance(Dog(), Dog)) # Outputs: True
# Checking if a class is a subclass of another
print(issubclass(Dog, Animal)) # Outputs: TrueErrores comunes con la herencia
Errores comunes con la herencia
Estos son algunos errores que debe evitar:
- Sobrescribir métodos sin llamar a
super()cuando sea necesario. - Confundir el orden de resolución de métodos (MRO) en la herencia múltiple.
- Usar herencia cuando la composición podría ser una opción más adecuada.
¿Qué hemos aprendido?
¿Qué hemos aprendido?
En esta lección, ha aprendido:
- Cómo definir superclases y subclases.
- Cómo sobrescribir métodos y usar
super(). - Cómo funciona la herencia múltiple en Python.
¡Excelente trabajo! Pasemos al siguiente tema.

Preguntas frecuentes
¿La lección «Herencia» es gratis?
Sí — el texto completo de «Herencia» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 6 lecciones en total.
¿Qué aprenderé en «Herencia»?
Aprenda a reutilizar y ampliar funcionalidades mediante la herencia Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Python Academy?
No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 6.
¿Cuánto tiempo toma la lección «Herencia»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Python Academy?
Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Clases y objetos
- Atributos y métodos
- Herencia
- Polimorfismo
- Encapsulación y abstracción
- Métodos mágicos (__str__, __repr__, etc.)