pythonメモ:import時のpathとカレントディレクトリ
別ディレクトリにある自作モジュールをimportし、そのモジュールが同フォルダの自作モジュールをimportする場合
ディレクトリ構成
main.py
mymodules
|
+--- module1.py
|
+--- module2.py
最初の呼び出し元で
#main.py
import sys
sys.path.append('mymodules')
のようにpathを追加しておくと、呼び出し先でも追加したpathが引き継がれている(というか最初のスクリプト実行時の環境のまま、モジュールの処理を挟み込んでるだけか)のでそのままimportできる。
#module1.py
import module2
なお呼び出した別ディレクトリのモジュール内の処理でも、カレントディレクトリは呼び出し元のまま変わらない。
また、 import先のグローバルで定義した変数は呼び出し元では使えない