Python-Klasse und Objekt

Python Klasse/Objekt

Python ist eine objektorientierte Programmiersprache.

Fast alles in Python ist ein Objekt und hat Eigenschaften und Methoden.

Klasse (Class) ähnelt einem Konstruktor für Objekte oder ist ein "Baukasten", der zum Erstellen von Objekten verwendet wird.

Klasse erstellen

Um eine Klasse zu erstellen, verwenden Sie class Schlüsselwort:

Beispiel

Verwenden Sie das Attribut x, um eine Klasse namens MyClass zu erstellen:

class MyClass:
  x = 5

Führen Sie ein Beispiel aus

Objekt erstellen

Jetzt können wir die Klasse namens myClass verwenden, um Objekte zu erstellen:

Beispiel

Erstellen Sie ein Objekt namens p1 und geben Sie den Wert von x aus:

p1 = MyClass()
print(p1.x)

Führen Sie ein Beispiel aus

__init__()-Funktion

Der obige Beispiel ist die einfachste Form von Klasse und Objekt, die in tatsächlichen Anwendungen nicht wirklich nützlich ist.

Um den Sinn der Klasse zu verstehen, müssen wir zuerst die eingebauten __init__() Funktion.

Alle Klassen haben eine Funktion namens __init__(), die immer beim Starten der Klasse ausgeführt wird.

Verwenden Sie die __init__()-Funktion, um Werte für Objekteigenschaften zu setzen oder andere Aktionen auszuführen, die beim Erstellen des Objekts erforderlich sind:

Beispiel

Erstellen Sie eine Klasse namens Person und verwenden Sie die __init__()-Funktion, um den Wert für name und age zu setzen:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
p1 = Person("Bill", 63)
print(p1.name)
print(p1.age)

Führen Sie ein Beispiel aus

Kommentar:Jedes Mal, wenn ein neues Objekt mit der Klasse erstellt wird, wirdAutomatisch aufgerufen __init__()-Funktion.

Objektmethoden

Objekte können auch Methoden enthalten. Methoden in einem Objekt sind Funktionen, die dem Objekt gehören.

Lassen Sie uns im Person-Klasse Methoden erstellen:

Beispiel

Fügen Sie eine Funktion zum Ausgeben einer Begrüßung hinzu und führen Sie sie auf dem Objekt p1 aus:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
  def myfunc(self):
    print("Hallo mein Name ist " + self.name)
p1 = Person("Bill", 63)
p1.myfunc()

Führen Sie ein Beispiel aus

Hinweis:self-Parameter ist eine Referenz auf die aktuelle Instanz der Klasse, um auf Variablen zuzugreifen, die der Klasse gehören.

self-Parameter

self Der Parameter ist eine Referenz auf die aktuelle Instanz der Klasse, die verwendet wird, um auf Variablen zuzugreifen, die der Klasse gehören.

Es muss nicht nach self benannt werden self, Sie können es frei aufrufen, aber es muss eine Funktion in der Klasse seinErster Parameter:

Beispiel

Verwenden Sie das Wort mysillyobject und abc anstelle von self:

class Person:
  def __init__(mysillyobject, name, age):
    mysillyobject.name = name
    mysillyobject.age = age
  def myfunc(abc):
    print("Hallo mein Name ist " + abc.name)
p1 = Person("Bill", 63)
p1.myfunc()

Führen Sie ein Beispiel aus

Objektattribut ändern

Sie können die Eigenschaften des Objekts so ändern:

Beispiel

Setzen Sie das Alter von p1 auf 40:

p1.age = 40

Führen Sie ein Beispiel aus

Objektattribut löschen

Sie können del Schlüsselwort zum Löschen eines Attributs eines Objekts:

Beispiel

Löschen Sie das Attribut age des Objekts p1:

del p1.age

Führen Sie ein Beispiel aus

Objekt löschen

Verwenden del Schlüsselwort zum Löschen eines Objekts:

Beispiel

Löschen Sie das Objekt p1:

del p1

Führen Sie ein Beispiel aus

pass-Anweisung

Die Klassedefinition darf nicht leer sein, aber wenn Sie aus irgendeinem Grund eine leere Klassedefinition geschrieben haben, verwenden Sie den pass-Ausdruck, um Fehler zu vermeiden.

Beispiel

class Person:
  pass

Führen Sie ein Beispiel aus