Pythonのimport
ステートメントは、他のPythonファイルやモジュールを現在のプログラムに取り込むためのものです。しかし、import
の使い方や動作は初心者にとっては少し混乱を招くことがあります。
Pythonのimportが何をしているのか
Pythonでimport
を実行すると、指定したPythonファイル(モジュール)が実行され、その中に定義された関数やクラス、変数などが現在のプログラムで利用可能になります。具体的には、import hoge
とすると、hoge.py
が実行され、hoge.py
内に記述した変数や関数にhoge.xxx()
の形でアクセスできるようになります。
importのパスの解決方法
Pythonがimport
ステートメントで指定したモジュールをどこから探すかは、sys.path
に記述された場所に依存します。基本的には、カレントディレクトリ、標準モジュールの置き場、pip install
したときの保存先が読み込み対象のディレクトリとして指定されています。
相対importと絶対import
Pythonのimport
には相対importと絶対importの2つの形式があります。相対importは、現在のモジュールから見た相対的なパスで他のモジュールをimportします。一方、絶対importは、プロジェクトのルートディレクトリからのパスでモジュールをimportします。
まとめ
Pythonのimport
ステートメントは強力なツールですが、その使い方や動作を理解することは初心者にとっては難しいかもしれません。しかし、一度理解してしまえば、Pythonのコードをより効率的に再利用することができ、大規模なプロジェクトを管理するのがより容易になります。