Python 3におけるモジュールとパッケージの違いは何ですか?

PYTHON3 チュートリアル

Python 3におけるモジュールとパッケージの違い

Pythonでは、モジュールとパッケージは再利用可能なコードを整理するための重要な概念です。モジュールは単一のPythonファイルであり、関数や変数などを含んでいます。一方、パッケージは複数のモジュールをまとめたもので、ディレクトリ構造を持ち、特定の機能や目的に沿って複数のモジュールをグループ化します。

モジュールの例

# module_example.py
def greet(name):
    return f"Hello, {name}!"

# 別ファイルでの使用例
import module_example

print(module_example.greet("Alice"))

上記の例では、module_example.pyという単一のファイルにgreetという関数が含まれています。別のファイルでこのモジュールを使用する際には、import文を使用してモジュールを読み込んでいます。

パッケージの例

# パッケージのディレクトリ構造
# my_package/
#   __init__.py
#   module1.py
#   module2.py

# my_package/module1.py
def add(a, b):
    return a + b

# my_package/module2.py
def subtract(a, b):
    return a - b

# パッケージの使用例
from my_package import module1, module2

print(module1.add(5, 3))
print(module2.subtract(10, 4))

上記の例では、my_packageというディレクトリ内に複数のモジュールが含まれており、それぞれが異なる機能を提供しています。パッケージを使用する際には、import文を使用して必要なモジュールを読み込んでいます。

結果

# モジュールの結果
# Hello, Alice!

# パッケージの結果
# 8
# 6

モジュールの例では、greet関数を使用してHello, Alice!という結果が出力されます。一方、パッケージの例では、module1add関数とmodule2subtract関数を使用して、それぞれの計算結果が出力されます。

Python 3におけるモジュールとパッケージの違いは、主に規模と構造にあります。モジュールは、1つのPythonファイルで構成され、関数やクラスなどのコードを含んでいます。一方、パッケージは複数のモジュールをまとめたもので、ディレクトリ階層を持ち、__init__.pyファイルを含む必要があります。

モジュールは、個々の機能を提供する小さな単位であり、再利用性を高めます。一方、パッケージは、複数の関連するモジュールをまとめて整理し、大規模なプロジェクトの管理を容易にします。

モジュールはimport文を使って単体で読み込むことができますが、パッケージはimport文を使ってその中のモジュールを読み込むことができます。モジュールとパッケージは、Pythonのモジュールシステムを活用して、コードの構造化と再利用性を向上させるために使用されます。

購読
通知
0 Comments
Inline Feedbacks
View all comments