In Python ist alles ein Objekt. Zahlen, Strings, DataFrames – sogar Funktionen sind Objekte. Konkret hat alles, womit du in Python arbeitest, eine Klasse, also einen Bauplan, der unter der Haube hinterlegt ist.
Ein objektorientierter Ansatz ist besonders hilfreich, wenn dein Code komplexe Wechselwirkungen vieler Objekte umfasst. In echter Produktivsoftware können Klassen Dutzende Attribute und Methoden mit komplexer Logik haben – die zugrunde liegende Struktur ist jedoch dieselbe wie bei der einfachsten Klasse.
Klassen sind wie ein Bauplan für Objekte: Sie skizzieren mögliche Verhaltensweisen und Zustände, die jedes Objekt eines bestimmten Typs haben kann. Wenn du zum Beispiel sagst: "Jeder Kunde hat eine Telefonnummer und eine E-Mail-Adresse und kann Bestellungen aufgeben und stornieren", hast du gerade eine Klasse definiert! So kannst du einheitlich über Kundinnen und Kunden sprechen. Ein konkretes Customer-Objekt ist dann einfach die Realisierung dieser Klasse mit einem bestimmten Zustandswert.
Python-Klassen finden
In Python ist alles ein Objekt. Zahlen, Strings, DataFrames – sogar Funktionen sind Objekte. Konkret hat alles, womit du in Python arbeitest, eine Klasse, also einen Bauplan, der unter der Haube hinterlegt ist. Diese einheitlichen Schnittstellen sind der Grund, warum du beispielsweise jeden DataFrame auf die gleiche Weise verwenden kannst.
Mit type() kannst du für jedes Python-Objekt dessen Klasse herausfinden. Die Klasse eines numpy-Arrays heißt zum Beispiel tatsächlich ndarray (für n-dimensionales Array).
import numpy as np
a = np.array([1,2,3,4])print(type(a))Bereitgestellt von
Wenn du mehr über objektorientierte Programmierung in Python lernen möchtest, sieh dir dieses Video aus unserem Kurs Object-Oriented Programming in Python an.
Mach dich mit Python-Datenstrukturen vertraut: Lerne mehr über Datentypen und primitive sowie nicht-primitive Datenstrukturen wie Strings, Listen, Stapel usw.
Lerne mehr über abstrakte Klassen in Python, wozu sie gut sind und wie du mit dem Modul „abc“ einheitliche Schnittstellen sicherstellen kannst. Enthält praktische Beispiele und bewährte Methoden für eine effektive Umsetzung.
Lerne die Funktionen und Methoden von Python-Listen kennen. Schau dir jetzt die Code-Beispiele für list() und andere Python-Funktionen und -Methoden an!
Ein objektorientierter Ansatz ist besonders hilfreich, wenn dein Code komplexe Wechselwirkungen vieler Objekte umfasst. In echter Produktivsoftware können Klassen Dutzende Attribute und Methoden mit komplexer Logik haben – die zugrunde liegende Struktur ist jedoch dieselbe wie bei der einfachsten Klasse.
Klassen sind wie ein Bauplan für Objekte: Sie skizzieren mögliche Verhaltensweisen und Zustände, die jedes Objekt eines bestimmten Typs haben kann. Wenn du zum Beispiel sagst: "Jeder Kunde hat eine Telefonnummer und eine E-Mail-Adresse und kann Bestellungen aufgeben und stornieren", hast du gerade eine Klasse definiert! So kannst du einheitlich über Kundinnen und Kunden sprechen. Ein konkretes Customer-Objekt ist dann einfach die Realisierung dieser Klasse mit einem bestimmten Zustandswert.
Python-Klassen finden
In Python ist alles ein Objekt. Zahlen, Strings, DataFrames – sogar Funktionen sind Objekte. Konkret hat alles, womit du in Python arbeitest, eine Klasse, also einen Bauplan, der unter der Haube hinterlegt ist. Diese einheitlichen Schnittstellen sind der Grund, warum du beispielsweise jeden DataFrame auf die gleiche Weise verwenden kannst.
Mit
type()kannst du für jedes Python-Objekt dessen Klasse herausfinden. Die Klasse einesnumpy-Arrays heißt zum Beispiel tatsächlichndarray(für n-dimensionales Array).Klassen vereinen Informationen über Zustand und Verhalten. Zustandsinformationen stecken in Python in Attributen, Verhaltensinformationen in Methoden.
Attribute und Methoden
Nimm ein
numpy-Array: Einige seiner Methoden und Attribute hast du bereits verwendet!Zum Beispiel hat jedes
numpy-Array ein Attribut „shape“, auf das du mit dem Namen des Arrays gefolgt von einem Punkt undshapezugreifst.Zustand <--> Attribute
Es gibt auch Methoden wie
maxundreshape, auf die du ebenfalls per Punkt zugreifen kannst.Verhalten <--> Methoden
Deine erste Klasse erstellen
In diesem Beispiel erstellst du eine leere Klasse
Employee. Anschließend erzeugst du mitEmployee()ein Objektempder KlasseEmployee.Versuche, das Attribut
.namedes Objektsempin der Konsole auszugeben. Was passiert?Probiere es selbst aus.
Wenn du mehr über objektorientierte Programmierung in Python lernen möchtest, sieh dir dieses Video aus unserem Kurs Object-Oriented Programming in Python an.
Dieser Inhalt stammt aus dem DataCamp-Kurs Object-Oriented Programming in Python von Aliaksandra Yarosh.
Schau dir auch DataCamps Python Object-Oriented Programming (OOP) Tutorial an.