Zirkuläre Abhängigkeit in Python
Bei der Arbeit mit Python-Modulen kann das Auftreffen einer zirkulären Abhängigkeit ein frustrierendes Problem sein. In diesem speziellen Szenario haben wir zwei Dateien, node.py und path.py, die die Klassen Node bzw. Path enthalten.
Zunächst importierte path.py node.py mithilfe von from node.py import *. Nach dem Hinzufügen einer neuen Methode zu Node, die auf das Path-Objekt verweist, führte das Importieren von path.py jedoch zu einem Fehler, da Node nicht definiert wurde.
Um die zirkuläre Abhängigkeit aufzulösen, sollten Sie Folgendes implementieren:
Verzögerte Auswertung nutzen: Anstatt während der Initialisierung ein Modul in ein anderes zu importieren, importieren Sie es nur, wenn es innerhalb einer bestimmten Funktion erforderlich ist. Importieren Sie beispielsweise in node.py Path nur bei Bedarf:
# in node.py from path import Path class Node ...
In path.py importieren Sie Node nur innerhalb der Methode, die dies erfordert:
# in path.py class Path def method_needs_node(): from node import Node n = Node() ...
Das obige ist der detaillierte Inhalt vonWie löst man eine zirkuläre Abhängigkeit in Python auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!