Pythonで上位ディレクトリを参照する方法について説明します。これは、特に自作のモジュールやデータファイルをインポートする際に役立ちます。
相対パスを使用する方法
まず、sys.path.append('../src/')
のようにsys.path
に相対パスを追加する方法があります。しかし、この方法ではsrc
ディレクトリ内部の/kasuga/__init__.py
は実行されますが、/src/__init__.py
は実行されません。
絶対パスを使用する方法
絶対パスを使用する方法もあります。pathlib
モジュールを使用して現在のスクリプトのディレクトリや親ディレクトリの絶対パスを取得できます。以下に例を示します。
import sys
from pathlib import Path
sys.path.append(str(Path('__file__').resolve().parent))
sys.path.append(str(Path('__file__').resolve().parent.parent))
上記のコードでは、Path('__file__').resolve().parent
で現在のスクリプトのディレクトリを取得し、Path('__file__').resolve().parent.parent
でその親ディレクトリの絶対パスを取得しています。
これらの方法を使用することで、Pythonで上位ディレクトリを参照することが可能になります。ただし、どの方法を選択するかは、プロジェクトの構造や個々のニーズによります。.