2017-08-01 10 views
1

私はパッケージの次の構造を得た:私は何Python:__main__と同じディレクトリにあるモジュールをサードパーティのモジュールにインポートするには?

/ 
    __init__.py 
    shared_lib.py 
    project1/ 
      __init__.py 
      main.py 
      config.py 
    project2/ 
      __init__.py 
      main.py 
      config.py 
    project3/ 
      __init__.py 
      main.py 
      config.py 

      ... 

はdirectory.There shared_libがインポートされているすべてのプロジェクトのためにmain.pyを開始しています。 前にshared_libにインポートされたconfig.pyが入っています。

どうすればできますか?だから私は何かを必要とする

import os.path.dirname(os.path.abspath(__main__.__file__)).config 

答えて

0

あなたは何を意味するのか分かりません。しかし

2つのファイルがある場合は、それぞれのファイルをこのようにインポートできます。

/project 
     *Main.py 
     *Config.py 
     * __init__.py 
     /test 
      *hello.py 
      __init__.py 

私はあなたの設定ファイルにhello.pyとConfig.py

import Config as conf 
import test.hello as hel 
+0

shared_libで

をPYTHONPATH。メインモジュールではなく、別のディレクトリにあるモジュールにインポートします。あなたの例によると 'hello.py'のインポート設定 –

0

をインポートしたいと言うことができます。

import shared_lib as shared 

私はワークスペースエディタとしてeclipeを使用しています。このdosent作品の場合

、そして環境変数にパスを追加しますが、私はメインモジュールと同じディレクトリに最初にあるインポート設定ファイルを意味

import project1.config as project1 
import project2.config as project2 
import project3.config as project3 
+0

その逆の設定ファイルを共有ライブラリにインポートする必要があります –

+0

私はこれが役に立ちそうです –

関連する問題