Python Klassen und Objekte
Python ist eine objektorientierte Programmiersprache. Python Klassen und Objekte sind die grundlegenden Bausteine der Python-Programmiersprache.
Python Klassen
Wenn Sie sich erinnern, beziehen sich grundlegende Datentypen in Python jeweils nur auf eine Art von Daten. Wie wäre es, wenn Sie einen Datentyp deklarieren könnten, der selbst mehr als einen Datentyp enthält und mit deren Hilfe Sie mit Hilfe einer Funktion arbeiten können? Die Python-Klasse bietet Ihnen diese Möglichkeit. Eine Python-Klasse ist der Bauplan, auf dem Instanzen der Klasse erstellt werden.
Einfache Deklaration von Python Klassen
Hier ist die sehr grundlegende Struktur einer Python-Klassendefinition.
class ClassName:
# list of python class variables
# python class constructor
# python class method definitions
Jetzt arbeiten wir mit echten Beispielen.
#definition of the class starts here
class Person:
#initializing the variables
name = ""
age = 0
#defining constructor
def __init__(self, personName, personAge):
self.name = personName
self.age = personAge
#defining class methods
def showName(self):
print(self.name)
def showAge(self):
print(self.age)
#end of the class definition
# Create an object of the class
person1 = Person("John", 23)
#Create another object of the same class
person2 = Person("Anne", 102)
#call member methods of the objects
person1.showAge()
person2.showName()
Dieses Beispiel ist ziemlich selbsterklärend. Wie wir wissen, sind die Zeilen, die mit „#“ beginnen, Python-Kommentare. Die Kommentare erklären die nächsten ausführbaren Schritte.
Python Klassendefinition
class Person:
Diese Zeile markiert den Beginn der Klassendefinition für die Klasse ‚Person‘.
Python Klassenvariablen
#initializing the variables
name = ""
age = 0
‚name‘ und ‚age‘ sind zwei Mitgliedsvariablen der Klasse ‚Person‘. Jedes Mal, wenn wir ein Objekt dieser Klasse deklarieren, wird es diese beiden Variablen als seine Mitglieder enthalten. Dieser Teil ist optional, da sie durch den Konstruktor initialisiert werden können.
Python Klassenkonstruktor
#defining constructor
def __init__(self, personName, personAge):
self.name = personName
self.age = personAge
Der Python-Klassenkonstruktor ist das erste Stück Code, das ausgeführt wird, wenn Sie ein neues Objekt einer Klasse erstellen. Primär kann der Konstruktor verwendet werden, um Werte in den Mitgliedsvariablen zu setzen. Sie können auch Nachrichten im Konstruktor drucken, um zu bestätigen, ob das Objekt erstellt wurde. Wir werden eine größere Rolle des Konstruktors kennenlernen, sobald wir mehr über Python-Vererbung erfahren. Die Konstruktormethode beginnt mit def __init__. Danach muss der erste Parameter ‚self‘ sein, da er eine Referenz auf die Instanz der Klasse selbst übergibt. Sie können auch zusätzliche Parameter hinzufügen, wie im Beispiel gezeigt. ‚personName‘ und ‚personAge‘ sind zwei Parameter, die gesendet werden, wenn ein neues Objekt erstellt werden soll.
Python Klassenmethoden
#defining python class methods
def showName(self):
print(self.name)
Methoden werden folgendermaßen deklariert:
def method_name(self, parameter 1, parameter 2, …….)
statements……..
return value (if required)
Im vorherigen Beispiel haben wir gesehen, dass die Methode showName() den Wert von ‚name‘ dieses Objekts druckt. Wir werden eines Tages noch viel mehr über Python-Methoden diskutieren.
Python Klassen und Objekte
# Create an object of the class
person1 = Person("Richard", 23)
#Create another object of the same class
person2 = Person("Anne", 30)
#call member methods of the objects
person1.showAge()
person2.showName()
Die Art und Weise, wie Objekte in Python erstellt werden, ist ziemlich einfach. Zuerst setzen Sie den Namen des neuen Objekts, gefolgt vom Zuweisungsoperator und dem Namen der Klasse mit Parametern (wie im Konstruktor definiert). Denken Sie daran, dass die Anzahl und der Typ der Parameter mit den Parametern, die in der Konstruktorfunktion empfangen werden, kompatibel sein sollten. Wenn das Objekt erstellt wurde, können Mitgliedsmethoden aufgerufen und Mitgliedsattribute zugegriffen werden (vorausgesetzt, sie sind zugänglich).
#print the name of person1 by directly accessing the ‘name’ attribute
print(person1.name)
Python Klassen und Objekte – Schlussfolgerung
Das ist alles für die Grundlagen der Python-Klasse. Da wir in den folgenden Tutorials mehr über objektorientierte Python-Funktionen wie Vererbung und Polymorphismus lernen werden, werden wir mehr über Python-Klassen und deren Funktionen erfahren. Bis dahin, fröhliches Programmieren und auf Wiedersehen!