KAMEYA_WORKS
Pythonでは、コードを整理し、再利用可能にするためにモジュールとパッケージの概念があります。本章では、モジュールとパッケージの基本を解説し、実践的な使い方を紹介します。
**モジュール(module)**とは、Pythonのスクリプト(.py
ファイル)を分割して管理できる仕組みです。他のファイルからインポートして使うことができます。
mymodule.py
(自作モジュール)def greet(name):
return f"こんにちは、{name}さん!"
main.py
)import mymodule
message = mymodule.greet("太郎")
print(message) # こんにちは、太郎さん!
import
のバリエーション# 1. モジュール全体をインポート
import mymodule
print(mymodule.greet("花子"))
# 2. 特定の関数のみインポート
from mymodule import greet
print(greet("一郎"))
# 3. 別名をつけてインポート(エイリアス)
import mymodule as mm
print(mm.greet("次郎"))
# 4. すべての要素をインポート(非推奨)
from mymodule import *
注意:
from mymodule import *
は名前の衝突が発生する可能性があるため、推奨されません。
**パッケージ(package)**とは、複数のモジュールをディレクトリでまとめたものです。
myproject/
│── main.py
│── mypackage/
│ │── __init__.py ← パッケージを認識させるためのファイル
│ │── module1.py
│ └── module2.py
mypackage/module1.py
の作成def hello():
return "こんにちは!"
main.py
)from mypackage import module1
print(module1.hello()) # こんにちは!
ポイント:
__init__.py
はPython 3.3以降では必須ではありませんが、明示的にパッケージと認識させるために作成するのが一般的です。
Pythonには標準で利用できる標準ライブラリがあります。
import math # 数学計算
import random # 乱数生成
import datetime # 日付操作
import os # OS関連の操作
math
モジュールimport math
print(math.sqrt(16)) # 4.0
pip
)Pythonでは、pip
を使って外部ライブラリをインストールできます。
pip install requests
requests
モジュール)import requests
response = requests.get("https://example.com")
print(response.text)
.py
)を分割して管理する仕組みpip
を使って外部ライブラリをインストールできるモジュールとパッケージを使いこなして、Pythonプログラムを整理しやすくしましょう!