Einführung in die Rolle von __init__ in Python

巴扎黑
Freigeben: 2017-09-04 11:34:26
Original
2763 Leute haben es durchsucht

Ich habe in Python eine Funktion mit einem seltsamen Namen gesehen, __init__. Ich weiß, dass die unterstrichene Funktion automatisch ausgeführt wird, aber ich kenne die konkrete Bedeutung ihrer Existenz nicht.

Heute habe ich < gesehen ;>Kapitel 11 Objektorientierte Programmierung, führt es wie folgt ein: „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 🎜>

Dies ist der Fall eine Konvention, dass, wenn eine Variable nur innerhalb einer Klasse oder eines Objekts verwendet wird, ihr ein einzelner Unterstrich vorangestellt werden sollte, während andere Namen öffentlich sind und von anderen Klassen/Objekten verwendet werden können. Beachten Sie, dass dies nur eine Konvention ist und nicht erforderlich ist von Python (im Gegensatz zum doppelten Unterstrich-Präfix).

Beachten Sie außerdem, dass die __del__-Methode dem Konzept des Destruktors ähnelt. „

Mir wurde plötzlich klar, dass __init_ _Es wird als Konstruktor verwendet in einer Klasse, und es scheint sehr starr geschrieben zu sein, aber es macht tatsächlich Sinn


def __init__(self, name):
    &#39;&#39;&#39;Initializes the person&#39;s data.&#39;&#39;&#39;
    self.name = name
    print &#39;(Initializing %s)&#39; % self.name
    # When this person is created, he/she
    # adds to the population
    Person.population += 1
Nach dem Login kopieren
Die Namensvariable gehört zum Objekt (sie verwendet Selbstzuweisung), also es ist eine Variable des Objekts

Der Wert von self.name wird pro Objekt angegeben und gibt seine Natur als Variable des Objekts an.

Das obige ist der detaillierte Inhalt vonEinführung in die Rolle von __init__ in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!