__init__ vs. __call__ in Python

In Python wird __init__ immer dann aufgerufen, wenn eine neue Instanz einer Klasse erstellt wird. Die Methode __call__ wird verwendet, um einen Funktionsaufrufoperator zu implementieren.

Wenn Sie eine Instanz einer Klasse erstellen, wie zum Beispiel eine Agenteninstanz der Klasse Agent, dann können Sie, wenn die Methode __call__ implementiert ist, die Instanz wie einen beliebigen Funktionsaufruf aufrufen. Sie können den Anruf folgendermaßen tätigen: agent( args ) . Dadurch wird die im Hauptteil der Methode __call__ implementierte Logik ausgeführt

Ein Objekt, das die Methode __call__ implementiert , wird in Python als „aufrufbar“ bezeichnet. Dh in diesem Fall wären Instanzen der Klasse Agent aufrufbar, wenn die Klasse Agent eine Definition der Methode __call__ implementiert .

Close

Meta