Kamelhirtenausbildung für die Wüstennavigation

PythonPythonBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Stellen Sie sich eine Szene in der weitläufigen und brennenden arabischen Wüste vor, in der eine Gruppe von Nomaden auf ihre zuverlässigen Kamelen für die Beförderung angewiesen ist. In diesem Setting übernehmen Sie die Rolle eines Kamelhirten, der damit betraut ist, neue Kamelen zu trainieren, um die für die Wüstentouren erforderlichen Navigations- und Ausdauerfähigkeiten zu erlernen.


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{{"Kamelhirtenausbildung für die Wüstennavigation"}} end

Vererbung verstehen

In diesem Schritt erstellen Sie eine Python-Klasse, die einen einfachen Kamel darstellt. Anschließend erstellen Sie eine neue Klasse für einen Rennkamel, der die Eigenschaften und Fähigkeiten des einfachen Kamels erbt und zusätzliche Geschwindigkeitsattribute hinzufügt.

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

## Erstellen Sie eine einfache Camel-Klasse
class Camel:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def navigate(self):
        print(f"{self.name} navigiert durch die Wüste.")

## Erstellen Sie eine RacingCamel-Klasse, die von Camel erbt
class RacingCamel(Camel):
    def __init__(self, name, age, speed):
        super().__init__(name, age)
        self.speed = speed

    def race(self):
        print(f"{self.name} rennt mit {self.speed} Meilen pro Stunde.")

## Erstellen Sie eine Instanz eines einfachen Kamels
basic_camel = Camel("Tom", 5)
basic_camel.navigate()

Führen Sie das Skript aus:

python camel.py

Die folgende Information sollte auf Ihrem Terminal angezeigt werden:

Tom navigiert durch die Wüste.

Verwendung der super()-Funktion

In diesem Schritt verbessern Sie die RacingCamel-Klasse, indem Sie die super()-Funktion verwenden, um die navigate()-Methode der Elternklasse aufzurufen.

Aktualisieren und fügen Sie den folgenden Code in die Datei /home/labex/project/camel.py hinzu:

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

    def race(self):
        print(f"{self.name} rennt mit {self.speed} Meilen pro Stunde.")

    def navigate(self):
        super().navigate()
        print(f"{self.name} navigiert mit hoher Geschwindigkeit.")

## Erstellen Sie eine Instanz von RacingCamel
racing_camel = RacingCamel("Sprint", 8, 60)
racing_camel.navigate()
racing_camel.race()

Führen Sie das Skript aus:

python camel.py

Die folgende Information sollte auf Ihrem Terminal angezeigt werden:

Sprint navigiert durch die Wüste.
Sprint navigiert mit hoher Geschwindigkeit.
Sprint rennt mit 60 Meilen pro Stunde.

Zusammenfassung

In diesem Lab haben Sie das Konzept der Vererbung in Python gelernt. Indem Sie Eltern- und Kindklassen definieren, können Sie eine Hierarchie von Klassen erstellen, die Attribute und Methoden erben, was die Wiederverwendbarkeit fördert und eine klare Struktur in Ihrem Code gewährleistet. Das Verständnis der Vererbung ist essentiell bei der objektorientierten Programmierung und ermöglicht eine effiziente Codeorganisation und -entwicklung.