Was machen __init__ und self in Python?

"init" ist eine spezielle Methode in Python-Klassen, auch bekannt als Konstruktor. Es wird verwendet, um die Attribute eines Objekts zu initialisieren, wenn es erstellt wird. Der "self"-Parameter bezieht sich auf die Instanz des Objekts selbst und wird verwendet, um auf die Attribute und Methoden der Klasse zuzugreifen.

Hier ist ein Beispiel für eine einfache Klassendefinition mit einer "init"-Methode:

class MyClass:
    def __init__(self, value):
        self.value = value

obj = MyClass(5)
print(obj.value)  # Output: 5

In diesem Beispiel wird, wenn ein Objekt der "MyClass" erstellt wird, die "init"-Methode aufgerufen und der Wert des "value"-Attributs auf den übergebenen Argument (in diesem Fall 5) gesetzt. Der "self"-Parameter wird verwendet, um auf die Instanz des Objekts zu verweisen, so dass "self.value" das "value"-Attribut auf "obj" setzt.