Python - 別ディレクトリにあるファイルのインポート
インポートの基本構文とファイル
構文は次のようになります。
import {.pyを除いたファイル名} #import hogehoge_file
ファイルの探索順序
インポート対象ファイルの探索は次の順序で行われます。
- 実行中のファイルと同じフォルダ
- カレントフォルダ
- 環境変数「PYTHONPATH」に列挙したフォルダ
- sys.pathに登録してあるフォルダ
探索範囲を拡張する
このままでは上記以外のパスにあるファイルをインポートできません。
これを解決するには、探索範囲に指定ディレクトリを追加する必要があります。
rubyでいう $LOAD_PATH.push('/path/to/dir')、
phpでいう set_include_path('/path/to/dir')のようなものだと思います。
pythonの場合は sys.path.append('/path/to/dir')という処理で追加できます。
なお、sysを使うためにsys自体をimportする必要があります。
import sys sys.path.append('/path/to/dir')
別ディレクトリのファイルをインポートする
上記拡張にて、対象ディレクトリを探索範囲に加えます。
環境ごとのパスを取得できるように、osモジュールを利用すると良さそうです。
import sys,os sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/../another')