Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist eine Klasse in Python?

Was ist eine Klasse in Python?

藏色散人
藏色散人Original
2019-07-06 11:51:255467Durchsuche

Was ist eine Klasse in Python?

Die wichtigsten Konzepte der Objektorientierung sind Klasse und Instanz. Es muss beachtet werden, dass die Klasse eine abstrakte Vorlage ist, z. B. die Student-Klasse, und die Instanz auf der Grundlage der Klasse A erstellt wird Spezifisches „Objekt“, jedes Objekt hat die gleichen Methoden, aber ihre Daten können unterschiedlich sein.

Nehmen wir immer noch die Student-Klasse als Beispiel. In Python erfolgt die Definition einer Klasse über das Klassenschlüsselwort:

class Student(object):
    pass

class folgt normalerweise dem Klassennamen Das Wort beginnt mit einem Großbuchstaben, gefolgt von (Objekt), und gibt an, von welcher Klasse die Klasse geerbt wird. Wenn es keine geeignete Vererbungsklasse gibt, wird normalerweise dies verwendet ist das, was alle Klassen letztendlich erben werden.

Nachdem Sie die Student-Klasse definiert haben, können Sie eine Instanz von Student basierend auf der Student-Klasse erstellen. Das Erstellen einer Instanz erfolgt über den Klassennamen + ():

>>> bart = Student()
>>> bart
<__main__.Student object at 0x10a67a590>
>>> Student
<class &#39;__main__.Student&#39;>

Sie können sehen, dass Variable Bart zeigt auf Es ist ein Student-Objekt und das folgende 0x10a67a590 ist die Speicheradresse. Die Adresse jedes Objekts ist unterschiedlich und Student selbst ist eine Klasse.

Sie können Attribute frei an eine Instanzvariable binden. Binden Sie beispielsweise ein Namensattribut an die Instanz bart:

>>> bart.name = &#39;Bart Simpson&#39;
>>> bart.name
&#39;Bart Simpson&#39;

Da eine Klasse als Vorlage fungieren kann, können Sie eine Instanz erstellen Dabei füllen wir zwangsweise einige Attribute aus, von denen wir glauben, dass sie gebunden werden müssen. Durch die Definition einer speziellen __init__-Methode werden beim Erstellen einer Instanz der Name, die Punktzahl und andere Attribute daran gebunden:

class Student(object):
    def __init__(self, name, score):
        self.name = name
        self.score = score

Beachten Sie, dass der erste Parameter der __init__-Methode immer self ist, was die Erstellung angibt. Die Instanz selbst, Daher können Sie innerhalb der __init__-Methode verschiedene Eigenschaften an self binden, da self auf die erstellte Instanz selbst verweist.

Mit der __init__-Methode können Sie beim Erstellen einer Instanz keine leeren Parameter übergeben. Sie müssen Parameter übergeben, die mit der __init__-Methode übereinstimmen, aber self muss nicht übergeben werden. Die Instanzvariable wird übergeben:

>>> bart = Student(&#39;Bart Simpson&#39;, 59)
>>> bart.name
&#39;Bart Simpson&#39;
>>> bart.score
59

Im Vergleich zu gewöhnlichen Funktionen weist die in der Klasse definierte Funktion nur einen Unterschied auf, dh der erste Parameter ist immer die Instanzvariable self, und beim Aufruf ist dies nicht erforderlich Übergeben Sie den Parameter. Davon abgesehen unterscheiden sich Klassenmethoden nicht von gewöhnlichen Funktionen, sodass Sie weiterhin Standardparameter, variable Parameter und Schlüsselwortparameter verwenden können.

Verwandte Empfehlungen: „Python-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist eine Klasse in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was bedeutet elif in Python?Nächster Artikel:Was bedeutet elif in Python?