Python で「親ディレクトリは読み込めません」なんて怒られるときはたいていは import の仕方が間違っている場合なので、だいたいは以下のエントリを読み直すと解決する。
しかしどうしても親ディレクトリにパスを通したいときがあって、そういうときのためのメモ。
import sys, os
pardir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(pardir)
ちなみに sys.path.append(os.pardir)
という方法もあるが、 os.pardir
は ".."
というただの文字列なので "スクリプトを実行したディレクトリの" 親ディレクトリを追加してしまう。
[追記] PYTHONPATH を指定する方法
リポジトリのルートをパスに追加したいだけなら環境変数 PYTHONPATH
を指定するだけでよかった。