Pythonで親ディレクトリからモジュールをインポートする方法について説明します。
相対インポート
Python 2.5以降では、相対インポートを使用することができます。以下のように書くことで、親ディレクトリからモジュールをインポートすることができます。
from ... import nib
ただし、この方法では一部の制限があります。例えば、トップレベルパッケージを超えた相対インポートはエラーになります。
sys.pathの利用
もう一つの方法として、sys
モジュールを利用する方法があります。sys.path
リストに必要なディレクトリを追加することで、インタープリタに目的のモジュールの場所を教えることができます。sys.path
を修正した後、通常のインポート文を使用して目的のモジュールをインポートすることができます。
import sys
sys.path.insert(0, '..')
このコードは親ディレクトリをインポートパスに追加します。親の親ディレクトリを追加する場合は、sys.path.insert(0, '../..')
のように書くことができます。
以上がPythonで親ディレクトリからのインポートを行う主な方法です。プロジェクトの構造や要件によって最適な方法が異なるため、各方法の特性を理解した上で適切な方法を選択してください。