Categories: AndereBlogPython-Kurs

Python-Klassen und -Objekte. Teil 9 Python-Kurs von Anfänger bis Fortgeschrittene in 11 Blogbeiträgen

Dieser Artikel wird dem Leser helfen, die grundlegenden Python-Klassen sowie einige grundlegende Anwendungen in der realen Welt zu verstehen. Wir werden Visual Studio Code als unseren Code-Editor verwenden. Wenn Sie Visual Studio Code noch nicht installiert haben, sind die Anweisungen im ersten Blog enthalten.

Python-Klassen und -Objekte – Inhaltsverzeichnis:

  1. Python-Klassen
  2. Python-Klassen – Definition
  3. Initialisierung von Python-Klassen
  4. Lass uns unsere erste Python-Klasse schreiben
  5. Attribute
  6. Verhalten der Klasse
  7. Objekte in Python
  8. Vererbung

Python-Klassen

Wie wir im ersten Blog besprochen haben, ist Python eine objektorientierte Programmiersprache. Es gibt drei Begriffe, die beim Diskutieren über objektorientierte Programmierung in Python sehr wichtig sind. Der erste ist die Klasse, der zweite ist ein Objekt, der dritte ist die Vererbung. Lass uns mit der Frage beginnen, was eine Klasse ist.

Python-Klassen – Definition

Eine Klasse ist ein Entwurf oder ein erweiterbares Programm, das bei der Erstellung von Objekten hilft. Eine Klasse besteht aus Verhalten und Zustand. Das Verhalten einer Klasse wird durch Funktionen innerhalb der Klasse demonstriert, die Methoden genannt werden. Der Zustand der Klasse wird durch die Variablen innerhalb der Klasse demonstriert, die Attribute genannt werden.

Initialisierung von Python-Klassen

Eine Klasse kann mit der folgenden Syntax initialisiert werden.

Eine Klasse in Python wird mit dem Schlüsselwort „class“ gefolgt vom Klassennamen definiert. Die grundlegende Syntax einer Python-Funktion wird unten dargestellt.

Zum Beispiel:

<img src="https://firmbee.com/wp-content/uploads/Python_9-800x600.png" alt="Python_classes" width="800" height="600" class="alignnone size-medium wp-image-21409 img-fluid" />
# Erstelle eine Funktion
# Klasse Monkey
class classname:

Hinweis: Der Klassenname hat die gleichen Normen wie die Variablendeklaration.

Lass uns unsere erste Python-Klasse schreiben

# erste Klasse

class Animals:
 pass

Im obigen Codeblock haben wir eine Klasse geschrieben, die wir im Blog weiterentwickeln werden. Wie Sie sehen können, haben wir das Schlüsselwort „class“ verwendet.

Lass uns nun sehen, wie wir Komponenten zur Tierklasse hinzufügen können. Aber bevor wir das tun, lass uns über den Konstruktor „__init__()“ lernen. Konstruktoren werden zur Instanziierung von Objekten verwendet. Hier wird __init__() zur Instanziierung von Objekten verwendet. Der Konstruktor kann standardmäßig nur mit self als Argument oder parametrisiert mit erforderlichen Argumenten sein.

Attribute

Es gibt zwei verschiedene Arten von Attributen, die ersten sind Klassenvariablen und die zweiten sind Instanzvariablen. Die Klassenvariablen sind die Variablen, die der Klasse gehören. Außerdem sind diese Variablen für alle Instanzen der Klasse verfügbar. Daher wird sich ihr Wert nicht ändern, selbst wenn sich die Instanz ändert.

# Klassenvariablen

class Animals:
 type=”mammals”

Die Instanzvariablen sind die Variablen, die zu den Instanzen selbst gehören. Daher ändern sie ihren Wert, wenn sich die Instanz ändert.

# Klassenvariablen

class Animals:
 def __init__(self,legs):
  self.legs=legs
  

Hinweis: Instanzvariablen sind nicht über den Klassennamen zugänglich, da sie sich je nach dem Objekt, das darauf zugreift, ändern.

Lass uns ein Programm erstellen, das sowohl Klassen- als auch Instanzvariablen deklariert.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 

Im obigen Programm haben wir sowohl Instanz- als auch Klassenvariablen verwendet. Diese Variablen bilden also die Attribute der Klasse.

Verhalten der Klasse

Wie besprochen, wird das Verhalten der Klasse durch die Methoden innerhalb der Klasse definiert. Aber bevor wir in die Diskussion über das Verhalten einsteigen, müssen wir über den Parameter „self“ sprechen, den wir in der __init__() verwendet haben.

Self:

In sehr einfachen Worten, wann immer wir etwas an self anhängen, sagt es, dass die Variable oder Funktion zu dieser Klasse gehört. Außerdem können mit „self“ die Attribute oder Methoden der Klasse zugegriffen werden.

Methoden:

Klassenmethoden sind Funktionen innerhalb der Klasse, die als erstes Argument „self“ haben. Eine Methode innerhalb der Klasse wird mit dem Schlüsselwort „def“ definiert.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

In der obigen Methode „bark“, da wir die Variable name verwenden, die eine Instanzvariable ist, greifen wir mit „self“ darauf zu, und diese Funktion würde „woof woof!!!“ nur ausgeben, wenn der Name, der dem Objekt zugewiesen wurde, Hund ist.

Wir haben die meisten Komponenten einer Klasse besprochen, aber Sie fragen sich vielleicht, wie man sieht, ob die Klasse funktioniert. Die Antwort darauf ist, dass wir, solange wir kein Objekt der Klasse erstellen, nicht sehen können, was die Klasse tut. Lass uns jetzt ein Objekt der Klasse definieren und erstellen.

Objekte in Python

Ein Objekt ist eine Instanz der Klasse. Eine Klasse ist nur ein Entwurf, aber das Objekt ist eine Instanz der Klasse, die tatsächliche Werte hat.

Der Code zum Definieren oder Erstellen eines Objekts wird unten dargestellt.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

dog=Animals(“dog”,4)

Um ein Objekt zu erstellen, lautet die Syntax objectname=classname(arguments). Daher geben wir hier den Namen des Tieres als Hund und die Anzahl der Beine als 4 an. Jetzt, da das Objekt der Klasse erstellt wurde, besteht der nächste Schritt darin, das Objekt zu verwenden, um auf seine Attribute zuzugreifen. Um auf die Attribute einer Klasse über das Objekt zuzugreifen, denken Sie daran, dass nur die Instanzvariablen über das Objekt zugänglich sind. Die Instanzvariablen in unserer Klasse sind name und legs.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

dog=Animals(“dog”,4)
print(dog.name)
print(dog.legs)

Wie wir sehen können, können wir Instanzvariablen mit der Punktnotation zugreifen.

Lass uns die Ausgabe erkunden.

#Ausgabe

dog
4

Um auf die Funktionen innerhalb der Klasse oder Methoden zuzugreifen, verwenden wir die Punktnotation. Das Beispiel wird unten dargestellt.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

dog=Animals(“dog”,4)
print(dog.name)
print(dog.legs)
print(dog.bark())

#Ausgabe

dog
4
woof woof!!!

Im obigen Beispiel sehen wir, dass wir die Klassenmethode „bark“ mit dem Hundobjekt, das wir erstellt haben, aufrufen. Wir sehen, dass wir den Parameter „self“ in den Funktionsargumenten nicht verwenden. Das liegt daran, dass wir die Verwendung von „self“ außerhalb der Klasse nicht benötigen, da das Objekt selbst als self fungiert.

Vererbung

Vererbung ist ein Prozess, durch den die Klassenattribute und -methoden an eine Kindklasse weitergegeben werden können. Die Klasse, von der die Kindklasse erbt, ist die Elternklasse. Die Syntax für die Vererbung wird unten dargestellt.

#Vererbung

class parent:

class child(parent):

Aus der obigen Darstellung können wir sehen, dass wir für die Vererbungssyntax den Namen der Elternklasse als Argument an die Kindklasse übergeben. Lass uns die Klasse Animals verwenden und eine Kindklasse namens Hund erstellen. Dies wird unten dargestellt.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

class Dog(Animals):
 def __init__(self,name,legs,breed):
  Animals.__init__(self,name,legs)
  self.breed=breed

Im obigen Beispielcode haben wir eine Hundeklasse erstellt, die die zuvor erstellte Tierklasse erweitert. Wir verwenden auch die Parameter aus den Tieren mit Animals.__init__(arguments), die Name und Beine haben, die an die Hundeklasse vererbt werden. Dann erstellen wir ein Instanzattribut für die Hundeklasse, das Rasse ist.

Lass uns jetzt ein Objekt für die Hundeklasse erstellen und auf die Attribute und Methoden der Tierklasse zugreifen.

class Animals:
 type=”mammals”
 def __init__(self,name,legs):
  self.name=name
  self.legs=legs
 def bark(self):
  if self.name==”dog”:
   print(“woof woof!!!”)
  else:
   print(“not a dog”)

class Dog(Animals):
 def __init__(self,name,legs,breed):
  Animals.__init__(self,name,legs)
  self.breed=breed

pug=Dog("dog",4,"pug")
pug.breed
pug.name
pug.legs
pug.bark()

#Ausgabe

pug
dog
4
woof woof!!!

Wie wir aus der Ausgabe sehen können, werden die Attribute und Methoden der Elternklasse von dem Kindklassenobjekt verwendet.

In diesem Blog haben wir einige Grundlagen der Klassen in Python behandelt. Im nächsten Blogbeitrag werden wir das Thema Dateiverwaltung behandeln.

Sie könnten auch unseren JavaScript-Kurs von Anfänger bis Fortgeschrittene mögen.

Robert Whitney

JavaScript-Experte und Dozent, der IT-Abteilungen schult. Sein Hauptziel ist es, die Produktivität des Teams zu steigern, indem er anderen beibringt, wie man effektiv beim Programmieren zusammenarbeitet.

View all posts →

Robert Whitney

JavaScript-Experte und Dozent, der IT-Abteilungen schult. Sein Hauptziel ist es, die Produktivität des Teams zu steigern, indem er anderen beibringt, wie man effektiv beim Programmieren zusammenarbeitet.

Share
Published by
Robert Whitney

Recent Posts

Die Macht der KI in der Musikproduktion erkunden | KI im Geschäft #33

Wenn es um KI in der Musikproduktion geht, ist sie am besten in der Co-Kreation…

2 hours ago

Scrum Guide | 12. Zusammenarbeit zwischen Product Owner und Scrum Master

In dem heutigen Artikel werden wir das Thema der Zusammenarbeit zwischen Product Owner und Scrum…

4 hours ago

Warum sind Selbstbewusstsein und Selbstregulation in der Führung wichtig?

Jeder Führer hat Ziele wie den Aufbau eines Teams, das angemessen hohe Ergebnisse liefert, die…

5 hours ago

3 E-Mail-Marketing-Plattformen

Werbekampagnen in sozialen Medien, direkter Kontakt während Branchenveranstaltungen, das Angebot von Schulungsmaterialien zur Steigerung des…

7 hours ago

Scrum-Leitfaden | 28. Sprint in Scrum

Mehrere kleinere Ereignisse bilden einen Sprint in Scrum. Sprints bilden wiederum zusammen einen Weg, der…

9 hours ago

Wie man mit Video-Marketing mehr Kunden für sein Unternehmen gewinnt?

Empfänger greifen immer häufiger auf Videomaterialien zurück. Schriftliche Formen werden weniger beliebt. Traditionelle Blogger versuchen,…

11 hours ago