Python の循環依存関係
Python モジュールを使用する場合、循環依存関係に遭遇するとイライラする問題になることがあります。この特定のシナリオでは、node クラスと Path クラスをそれぞれ含む、node.py と path.py という 2 つのファイルがあります。
最初に、path.py は、from node.py import * を使用して、node.py をインポートしました。ただし、Path オブジェクトを参照する新しいメソッドを Node に追加した後、path.py をインポートすると、Node が定義されていないためエラーが発生しました。
循環依存関係を解決するには、次の実装を検討してください:
遅延評価を利用する: 初期化中にあるモジュールを別のモジュール内にインポートするのではなく、特定の関数内で必要な場合にのみインポートします。たとえば、node.py では、必要な場合にのみ Path をインポートします:
# in node.py from path import Path class Node ...
path.py では、それを必要とするメソッド内でのみ Node をインポートします:
# in path.py class Path def method_needs_node(): from node import Node n = Node() ...
以上がPython で循環依存関係を解決するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。