Ich habe gesehen, dass es in Python eine Funktion mit einem seltsamen Namen gibt, __init__. Ich weiß, dass die unterstrichene Funktion automatisch ausgeführt wird, aber ich kenne die genaue Bedeutung ihrer Existenz nicht.
Heute habe ich >Kapitel 11 Objektorientierte Programmierung gesehen, in dem es wie folgt eingeführt wurde: „Hinweise für C/Java/C#-Programmierer
Alle Klassenmitglieder (einschließlich Datenmitglieder ) in Python sind öffentlich, alle Methoden sind gültig, mit einer Ausnahme: Wenn Sie einen Datenelementnamen mit einem doppelten Unterstrich wie __privatevar verwenden, behandelt das Namensverwaltungssystem von Python ihn effektiv als private Variable >Es gibt eine Konvention, dass einer Variablen, die nur innerhalb einer Klasse oder eines Objekts verwendet wird, ein einzelner Unterstrich vorangestellt werden sollte, während andere Namen öffentlich sind und von anderen Klassen/Objekten verwendet werden können Konvention, die von Python nicht benötigt wird (im Gegensatz zum doppelten Unterstrich-Präfix). Beachten Sie außerdem, dass die __del__-Methode dem Destruktor „
Suddenly“ ähnelt. __init__ wird als Konstruktor in einer Klasse verwendet und in geschrieben eine feste Methode. Es scheint sehr starr, aber es macht tatsächlich Sinn
Die Namensvariable gehört zum Objekt ( Es verwendet self (Zuweisung) und ist daher eine Variable eines Objektsdef __init__(self, name): '''Initializes the person's data.''' self.name = name print '(Initializing %s)' % self.name # When this person is created, he/she # adds to the population Person.population += 1
Der Wert von self.name wird pro Objekt angegeben und gibt damit seine Natur als Variable eines Objekts an.