1.4 モジュールとパッケージ #
Pythonでは、コードを再利用しやすくするために、モジュールとパッケージを使用します。モジュールは、Pythonのスクリプトファイルで、関数、クラス、変数などを定義します。パッケージは、関連するモジュールをまとめたもので、ディレクトリ構造を持っています。
モジュール #
モジュールは、Pythonのスクリプトファイル(.py
)です。例えば、以下のような内容のcalculator.py
というファイルを作成します。
# calculator.py
def add(a, b):
return a + b
def subtract(a, b):
return a - b
他のスクリプトファイルやインタラクティブシェルから、import
キーワードを使ってモジュールを読み込むことができます。
import calculator
result = calculator.add(5, 3)
print(result) # 8
from ... import ...
構文を使って、モジュールから特定の関数やクラスをインポートすることができます。
from calculator import add, subtract
result = add(5, 3)
print(result) # 8
パッケージ #
パッケージは、関連するモジュールをディレクトリ構造でまとめたものです。パッケージのディレクトリには、init.pyというファイルが含まれています(Python 3.3以降は、このファイルがなくてもパッケージとして認識されますが、後方互換性のために残しておくことが推奨されています)。
例えば、次のようなディレクトリ構造でパッケージを作成することができます。
my_package/
__init__.py
calculator.py
geometry.py
パッケージからモジュールや関数をインポートするには、以下のように記述します。
import my_package.calculator
result = my_package.calculator.add(5, 3)
print(result) # 8
from my_package import calculator
result = calculator.add(5, 3)
print(result) # 8
from my_package.calculator import add
result = add(5, 3)
print(result) # 8
モジュールとパッケージを使用することで、コードを再利用しやすく整理された構造にできます。また、他のプロジェクトで開発された機能を簡単に利用できるようになります。