Entrenamiento de conductores de camellos para la navegación en el desierto

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Imagina un escenario en el vasto y abrasador desierto árabe donde un grupo de nómadas depende de sus fieles camellos para el transporte. En este contexto, asumirás el papel de un conductor de camellos encargado de entrenar nuevos camellos para heredar las habilidades de navegación y resistencia esenciales para viajar por el desierto.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ObjectOrientedProgrammingGroup(["Object-Oriented Programming"]) python/ObjectOrientedProgrammingGroup -.-> python/inheritance("Inheritance") subgraph Lab Skills python/inheritance -.-> lab-271562{{"Entrenamiento de conductores de camellos para la navegación en el desierto"}} end

Comprendiendo la Herencia

En este paso, crearás una clase de Python que represente un camello básico. Luego, crearás una nueva clase para un camello de carreras, heredando los rasgos y habilidades del camello básico y agregando atributos de velocidad adicionales.

En /home/labex/project/camel.py:

## Crea una clase base Camel
class Camel:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def navigate(self):
        print(f"{self.name} está navegando por el desierto.")

## Crea una clase RacingCamel que hereda de Camel
class RacingCamel(Camel):
    def __init__(self, name, age, speed):
        super().__init__(name, age)
        self.speed = speed

    def race(self):
        print(f"{self.name} está corriendo a {self.speed} millas por hora.")

## Crea una instancia básica de Camel
basic_camel = Camel("Tom", 5)
basic_camel.navigate()

Ejecuta el script:

python camel.py

La información siguiente debe aparecer en tu terminal:

Tom está navegando por el desierto.

Usando la función super()

En este paso, mejorará la clase RacingCamel utilizando la función super() para llamar al método navigate() de la clase padre.

Actualice y agregue el siguiente código en el archivo /home/labex/project/camel.py:

class RacingCamel(Camel):
    def __init__(self, name, age, speed):
        super().__init__(name, age)
        self.speed = speed

    def race(self):
        print(f"{self.name} está corriendo a {self.speed} millas por hora.")

    def navigate(self):
        super().navigate()
        print(f"{self.name} está navegando a alta velocidad.")

## Crea una instancia de RacingCamel
racing_camel = RacingCamel("Sprint", 8, 60)
racing_camel.navigate()
racing_camel.race()

Ejecute el script:

python camel.py

La información siguiente debe aparecer en su terminal:

Sprint está navegando por el desierto.
Sprint está navegando a alta velocidad.
Sprint está corriendo a 60 millas por hora.

Resumen

En este laboratorio, aprendiste el concepto de herencia en Python. Al definir clases padre e hijo, puedes crear una jerarquía de clases que heredan atributos y métodos, lo que promueve la reutilización y mantiene una estructura clara en tu código. Comprender la herencia es esencial en la programación orientada a objetos y permite una organización y desarrollo de código eficientes.