Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Python OOP Grundlagen: Klassen, Objekte, Vererbung und Konstruktoren erklärt

Python Objektorientierte Programmierung (OOP)

Pythons OOP-Modell lässt Entwickler reale Entitäten als Objekte modellieren, die durch Klassen definiert sind. Die Sprache priorisiert Code-Wiederverwendung und Modularität, was das Erstellen und Erweitern von Klassen unkompliziert macht.

Was ist eine Klasse?

Beispiel: Eine Customer-Klasse könnte Attribute wie transactions, balance und debt exponieren, sowie Methoden für deposit() oder withdraw().

Klasse in Python definieren

Folgen Sie diesen Schritten, um eine einfache Klasse zu erstellen:

  1. Nutzen Sie das class-Keyword:
    class MyClass:
        pass
  2. Definieren Sie Methoden innerhalb der Klasse. Der erste Parameter jeder Instanzmethode ist self, der auf das Objekt selbst verweist.
    class MyClass:
        def greet(self):
            print("Hallo von MyClass")
  3. Instanziieren Sie die Klasse:
    obj = MyClass()
  4. Rufen Sie ihre Methoden auf:
    obj.greet()

Vollständiges Beispiel:

# Funktionierendes Beispiel einer Python-Klasse
class MyClass:
    def method1(self):
        print("Guru99")
    def method2(self, text):
        print("Software Testing: " + text)
def main():
    c = MyClass()
    c.method1()
    c.method2(" Testing is fun")
if __name__ == "__main__":
    main()

Vererbung in Python

Vererbung erlaubt einer abgeleiteten Klasse, das Verhalten einer Basisklasse wiederzuverwenden und zu erweitern. Python unterstützt sowohl einfache als auch mehrfache Vererbung.

class Base:
    def greet(self):
        print("Hallo von Base")
class Derived(Base):
    def greet(self):
        super().greet()
        print("Hallo von Derived")
# Nutzung
obj = Derived()
obj.greet()

Wichtige Punkte:

  • Abgeleitete Klassen erben Attribute und Methoden automatisch.
  • Methoden überschreiben, indem Sie eine Methode mit demselben Namen in der Unterklasse definieren.
  • Elternmethode explizit aufrufen mit ParentClass.method(self, …) oder super().method().

Konstruktoren: __init__

Die __init__-Methode initialisiert neue Objekte mit vordefinierten Werten.

class User:
    def __init__(self, name):
        self.name = name
    def say_hello(self):
        print(f"Willkommen bei Guru99, {self.name}")
user = User("Alex")
user.say_hello()

Ausgabe: Willkommen bei Guru99, Alex

Python 2 vs Python 3

Es bestehen nur geringe Syntaxunterschiede. Das obige Beispiel funktioniert in beiden Versionen mit entsprechenden print-Statements.

Wichtigste Erkenntnisse

  • Klassen bündeln Daten und Verhalten, definiert mit dem class-Keyword.
  • Instanzmethoden nutzen self, um auf das Objekt zu verweisen.
  • Vererbung fördert Code-Wiederverwendung und kann einfach oder mehrfach sein.
  • Konstruktoren (__init__) setzen den initialen Zustand für neue Objekte.
  • Pythons flexible Syntax und Laufzeitbehandlung von self machen OOP intuitiv.

Python

  1. C# Klassen & Objekte: Fundamente für robustes OOP
  2. Python Objektorientierte Programmierung meistern: Klassen, Vererbung, Kapselung & Polymorphie
  3. Python Vererbung meistern: Konzepte, Syntax und praktische Beispiele
  4. Roboter mit Raspberry Pi und Python bauen: Komplette Anleitung
  5. C++ Struct vs. Class: Wichtige Unterschiede, Syntax und beste Anwendungsfälle
  6. Pythons strip()-Methode meistern: Umfassender Leitfaden & Praxisbeispiele
  7. Python Counter in collections: Effizientes Zählen, Aktualisieren und arithmetische Operationen
  8. type() und isinstance() in Python verstehen: Praktische Beispiele
  9. Python list.index(): Element-Positionen finden mit praktischen Beispielen
  10. Java meistern: Objekte, Klassen und Kern-OOP-Konzepte verstehen