2009-03-28 18 views
-2

私はpythonの初心者です。私は2つのモジュールを持っています。モデルM1およびモジュールm2。 m2からは、m1とm2を参照する必要があり、m1はディスク内の2つの異なる場所にあります。モジュール間でのPython依存関係の解決

m2を実行する前にm1をインポートしようとしているとき、もちろんm1が見つかりません。 私の通訳者をm1の所在地にどのように向けることができますか?

おかげ J

+0

-1:コードなし。 -1:実際のエラーメッセージはありません。 –

答えて

3

(さらにグーグルはあなたの特定のニーズのための具体的な答えに到達するのに役立ちます)これは、(より多くの詳細を与える!)あなたの特定の問題が何であるかを完全に明らかではないのですが、あなたはこれらが役立つことがあります。 sys.pathが可能操作PYTHONPATHに表示されたディレクトリ内

  • PYTHONPATH環境変数
  • .pthファイル
  • 前もってインポートする

しかし、m2がm1に依存し、それらが一緒に配布されている場合は、packagesを使用して同じディレクトリツリーに配置する方が良いでしょう。

2

シェル環境を変更できない場合は、インタプリタがモジュールを検索するディレクトリをスクリプト内のsys.pathに追加できます。実際には、PYTHONPATH環境変数が読み込まれ、sys.pathの初期化に使用されます。可能性は何

0

は、モジュールの詳細に依存するが、通常、あなたはちょうどこのようなモジュールから必要な仕様オブジェクト、インポートすることができます。

from A import classA1, funA1 

A.pyでB.py

での

from B import classB1, funB1 

あなたは必要なものだけをインポートできます。依存関係がより複雑な場合、これはうまくいかないかもしれませんが、一般的には可能です(解決できないオブジェクトレベルで実際には相互に再帰的な依存関係がない限り)。

関連する問題