Python で循環依存関係を解決するには?

Susan Sarandon
リリース: 2024-10-19 16:35:30
オリジナル
448 人が閲覧しました

How to Resolve Circular Dependency in Python?

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 サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!