モジュールとパッケージ
モジュール
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 を使うことが多い気がする。