
プログラムが大きくなると、すべてのコードを1つのファイルに書くのは現実的ではありません。今日学んだ「モジュール」と「ライブラリ」は、コードを整理し、再利用可能にするための仕組みです。
モジュールとは
モジュールは、Pythonコードの書かれたファイルのことです。
なぜモジュールを分けるのか
コードが長くなると、以下の問題が発生します:
1. 読みづらい
- 数百行、数千行のコードを1つのファイルで管理するのは困難
2. バグの原因になる
- どこに何が書いてあるか分からず、修正が大変
3. 再利用しにくい
- 他のプロジェクトで同じ処理を使いたくても、コピー&ペーストが必要
解決策:モジュールで分割管理
プロジェクト/
├── main.py # メインプログラム
├── greeting.py # 挨拶に関する関数
└── calculation.py # 計算に関する関数
処理ごとにファイルを分けることで、整理された状態を保てます。
import:モジュールを読み込む
他のファイル(モジュール)を使うには、import で読み込みます。
基本構文
構文: import モジュール名
# greeting.py(別ファイル)
def say_hello():
print("こんにちは")
def say_goodbye():
print("さようなら")
# main.py(メインプログラム)
import greeting
greeting.say_hello() # こんにちは
greeting.say_goodbye() # さようなら
ポイント
- 拡張子
.pyは不要 モジュール名.関数名()で使用
モジュールを使うメリット
1. コードの整理
- 機能ごとにファイルを分けられる
2. 再利用性
- 他のプロジェクトでも同じモジュールを使える
3. チーム開発
- 複数人で分担して開発しやすい
4. 保守性
- バグ修正や機能追加がしやすい
ライブラリ:あらかじめ用意されたモジュール
Pythonには、**あらかじめ用意されたモジュール(ライブラリ)**がたくさんあります。
標準ライブラリの例
# mathライブラリ(数学関数)
import math
print(math.sqrt(16)) # 4.0(平方根)
print(math.pi) # 3.141592...(円周率)
# randomライブラリ(ランダム処理)
import random
print(random.randint(1, 10)) # 1〜10のランダムな整数
# datetimeライブラリ(日付・時刻)
import datetime
now = datetime.datetime.now()
print(now) # 2026-02-11 14:30:45.123456
自分で作らなくても、すでに便利な機能が用意されているのがPythonの強みです。
importの他の書き方
特定の関数だけインポート
# すべてをインポート
import math
print(math.sqrt(16))
# 特定の関数だけインポート
from math import sqrt
print(sqrt(16)) # モジュール名なしで使える
モジュールに別名をつける
# 長い名前のモジュールに短い別名をつける
import datetime as dt
now = dt.datetime.now()
print(now)
モジュールとライブラリの違い
正確には、以下のように使い分けられます:
- モジュール: 1つのPythonファイル
- パッケージ: 複数のモジュールをまとめたもの
- ライブラリ: パッケージの集まり、または大きな機能群
ただし、実務では「ライブラリ」という言葉で全体を指すことが多いです。
今日の学びのポイント
- モジュール: Pythonコードが書かれたファイル
- import: モジュールを読み込む(拡張子
.pyは不要) - 使い方:
モジュール名.関数名() - ライブラリ: Pythonにあらかじめ用意されたモジュール
- メリット: コードの整理、再利用性、保守性の向上
モジュールとライブラリを使いこなせるようになると、プログラミングの効率が一気に上がります。自分で全部書く必要はなく、既存のライブラリを活用することで、より高度な機能を簡単に実装できます。
次は、実際にライブラリを使って、もっと実践的なプログラムを作っていきます。

コメント