0Pricing
Python Academy · Lección

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.

Herencia — ilustración 1

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 barks

Usar 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):
    pass

Comprobar 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: True

Errores 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.

Herencia — ilustración 11

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

  1. Clases y objetos
  2. Atributos y métodos
  3. Herencia
  4. Polimorfismo
  5. Encapsulación y abstracción
  6. Métodos mágicos (__str__, __repr__, etc.)
← Volver a Python Academy