init

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Gast

hallo, wofür sind __init__ und self gut?

Code: Alles auswählen

Wenn wir den Operator = nun auch als Zuweisung für unsere gerade im Aufbau befindlichen neuen Hybridobjekte gut funktionieren soll, muss er sozusagen in seiner Wirkungsweise überschrieben werden. 

Dieses Überschreiben erfolgt mit einer Funktion, oder Methode, wie wir in Zukunft sagen werden, die den Namen __init__ tragen muss. Der Name wird mit zwei Unterstrichen begonnen und endet auch mit zwei Unterstrichen. 
....
Jener Name, der innerhalb des Klassenobjektes auf den eigentlichen Namen des Klassenobjektes zeigt, heisst self.
kann nicht viel damit anfangen.
Kann mich jemand Aufklären???
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi,

__init__ und self, braucht man für objektorientierte Programmierung in Python.
Mit der Methode __init__ wird eine Instanz (Objekt) einer Klasse (Objektbeschreibung) initialisiert.
self ist bei Methoden einer Klasse immer der erste Parameter und stellt die jeweiige Instanz (das Object) der Klasse, mit der die Methode etwas machen soll, dar.

Beispiel:

Code: Alles auswählen

#/usr/bin/env python

class MyClass():

    def __init__(self, value): # Initialisierung
        self.value = value

    def printme(self): # Gib Attribut value aus
        print self.value


myObject1 = MyClass(42)
myObject2 = MyClass(3.1415)
print "myObject1 hat den Wert", myObject1.printme()
print "myObject2 hat den Wert", myObject2.printme()

Gruß

Dookie
Antworten