Python 中兩個類別的循環依賴
在Python 中,當兩個模組相互導入時,您可能會遇到循環依賴問題。例如,假設您有兩個文件,node.py 和 path.py,分別定義 Node 和 Path 類別。
最初,path.py 使用 from node.py import * 匯入 Node。但是,在 Node 中新增使用 Path 的新方法後,在導入 path.py 時遇到異常,表示 Node 未定義。
要解決此循環依賴,請考慮以下方法:
一種選擇是僅在需要時導入另一個模組(node.py)的特定函數/方法中的一個模組(在本例中為path.py)。如果您只需要有限數量的函數中的依賴項,則此方法非常有效:
<code class="python"># in node.py from path import Path class Node: ... # in path.py class Path: def method_needs_node(): from node import Node n = Node() ...</code>
透過僅在 method_needs_node() 方法中匯入 node.py,可以避免循環相依性問題。
以上是如何解決Python中具有兩個依賴類別的循環依賴?的詳細內容。更多資訊請關注PHP中文網其他相關文章!