2017-01-06 6 views
1

Ich habe gerade angefangen, Python von Python lernen The Hard Way von Zed A. Shaw. Allerdings bin ich verwirrt darüber, wann sollte man die init-Methode verwenden? Ist es obligatorisch, es zu benutzen? Was passiert von mir nicht?Wann zu verwenden und wenn nicht __init__ in Python 2,7

+0

Mögliche Duplikate von [Python \ _ \ _ init \ _ \ _ und selbst was tun sie?] (Http://stackoverflow.com/questions/625083/python-init-and-self-what-do-they -machen) –

Antwort

2

Vielleicht hat jemand anderes eine bessere Antwort, aber das ist, wie ich es verstehe. Die Metapher eines Bauplans für ein Haus funktioniert hier gut. Nehmen wir an, Sie haben eine Wohnsiedlung mit vielen verschiedenen Häusern, die mit kleinen Abweichungen im Wesentlichen gleich aussehen. Um ein Haus zu bauen, müssen Sie jedes Mal im Wesentlichen dasselbe tun und Anpassungen hinzufügen.

Ihre Klassendeklarationen sind wie Blaupausen, die Ihrem Python-Programm alles erzählen, was es über ein Haus wissen muss. Ihre Methode __init__ liefert jedoch die Anweisungen für die absoluten Basisanforderungen für dieses Objekt.

Genau wie Sie kein Haus ohne eine Tür haben können, können Sie kein Student Objekt oder ein Pet Objekt ohne ein paar grundlegende Eigenschaften wie Name, Alter haben. Ihre Methode __init__ teilt Python mit, was es tun muss, wenn Sie einen neuen Schüler oder ein neues Haustier anlegen, genau wie ein Bauplan einem Generalunternehmer mitteilt, dass jedes Haus eine Tür benötigt.

Die __init__ Methode legt auch die self Variable des Objekts fest. self können Sie spezifisch über die Variablenzuweisung für eine Einzelkopie einer Klasse sein.

Hoffe, das hilft!

Verwandte Themen