モジュールとパッケージ
モジュール
PythonにおいてモジュールとはPythonのコードが記述されたファイルである。
6. モジュール — Python 3.12.6ドキュメント
こういった要求をサポートするために、Pythonでは定義をファイルに書いておき、スクリプトの中やインタプリタの対話インスタンス上で使う方法があります。このファイルを モジュール (module) と呼びます。
モジュールの例
以下はmodule.pyというモジュールをmain.pyから呼び出す例である。
構成
| .
├── module.py
└── main.py
|
ファイル
実行結果
パッケージとは
Pythonにおいてパッケージとは、複数のモジュールを持ち、かつ__init__.pyを含むディレクトリである。
6. モジュール — Python 3.12.6ドキュメント
パッケージ (package) は、Pythonのモジュール名前空間を "ドット付きモジュール名" を使って構造化する手段です。
パッケージの例
以下はClassAクラスとClassBクラスを持つpackageというパッケージを__main__.pyから呼び出す例である。
例ではアプリケーション自体もappとしてパッケージ化している。パッケージはpython -m ${package_name}で実行できる。
構成
| .
└── app
├── __init__.py
├── __main__.py
└── package
├── __init__.py
├── class_a.py
└── class_b.py
|
ファイル
実行結果
相対importと絶対import
from .class_a import ClassAのようなimportを相対importと呼ぶ。パッケージ内では相対importを使うことが多い気がする。