【Python入門シリーズ⑦】では、リストや文字列を使って複数のデータを効率的に扱う方法を学びました。
今回は、Pythonの最大の強みである「ライブラリ」について学びます。ライブラリとは、他の誰かが作った便利な機能の詰め合わせパック。これを使えば、複雑な処理を数行のコードで実現できます。AI開発でPythonが選ばれる理由の一つが、この豊富なライブラリエコシステムなのです。
このシリーズの目次
- 第0回: 開発環境の準備
- 第1回: Pythonの特徴とコードの基礎
- 第2回: 変数と型の扱い
- 第3回: 基本的な演算子と演算
- 第4回: 条件分岐の仕方
- 第5回: 繰り返し処理でプログラムを自動化する
- 第6回: 関数を作ってコードを整理整頓する
- 第7回: 複数のデータを扱う「リスト」と文字列操作
- 第8回: ライブラリでPythonの能力を拡張する ←今ここ
- 第9回: ファイルの読み込みと書き込み
- 第10回: Matplotlib入門!データをグラフで可視化する
- 第11回: 画像データの仕組みとPillowでの基本操作
- 第12回: 画像処理の基礎(フィルタリングと特徴抽出)
- 第13回: 機械学習実践!AIによる画像分類に挑戦
- 第14回: オープンデータの取得と前処理(データクレンジング)
- 第15回: 実践データ分析!オープンデータから傾向を読み解く
ライブラリとは?
ライブラリとは、よく使う機能をまとめた「便利な道具箱」です。
例えば、あなたがケーキを作るとき、小麦粉から練って生地を作るより、市販のホットケーキミックスを使った方が早いですよね。プログラミングも同じです。複雑な計算や処理を自分で一から書くのではなく、既に誰かが作った「実績のある部品」を使うことで、開発時間を大幅に短縮できます。

ライブラリの利点
| 利点 | 説明 |
|---|---|
| 🚀 開発スピードUP | 複雑な処理を数行で実現 |
| 🛡️ 信頼性 | 多くの開発者によってテスト済み |
| 🔧 保守性 | バグ修正や機能追加が自動的に反映 |
| 🌍 コミュニティ | 困ったときの情報が豊富 |
標準ライブラリ vs 外部ライブラリ
Pythonのライブラリには大きく分けて2種類あります。
標準ライブラリ(Built-in Libraries)
Pythonをインストールすると最初から使えるライブラリ群。追加インストール不要。
| ライブラリ | 用途 |
|---|---|
math | 数学関数(平方根、三角関数など) |
random | 乱数生成 |
datetime | 日付・時刻の操作 |
os | ファイル・ディレクトリ操作 |
json | JSONデータの読み書き |
外部ライブラリ(External Libraries)
別途インストールが必要だが、より専門的で強力な機能を提供。
| ライブラリ | 用途 |
|---|---|
numpy | 高速な数値計算 |
pandas | データ分析・表形式データ処理 |
matplotlib | グラフ描画・データ可視化 |
scikit-learn | 機械学習 |
tensorflow / pytorch | 深層学習(ディープラーニング) |
ライブラリのインポート方法
ライブラリを使うには、import文でプログラムに読み込む必要があります。
基本形:ライブラリ全体をインポート
import math
print(math.sqrt(16)) # 4.0
print(math.pi) # 3.141592...
Pythonエイリアス(別名)をつける
長いライブラリ名を短縮できます。
import numpy as np # npという短い名前で使える
arr = np.array([1, 2, 3])
print(arr * 2) # [2 4 6]
Python特定の機能だけインポート
from math import sqrt, pi
print(sqrt(16)) # math.を書かなくてOK
print(pi)
Pythonすべてをインポート(非推奨)
from math import * # ⚠️ 名前の衝突リスクあり
print(sqrt(16)) # どこから来た関数か不明瞭
Python👆 ベストプラクティス:import ライブラリ as 短縮名 の形が最も推奨されます。コードの可読性が高く、どのライブラリの機能を使っているか明確だからです。
代表的な標準ライブラリ
追加インストール不要で使える便利な標準ライブラリを紹介します。
1. math – 数学関数
import math
print(math.sqrt(25)) # 平方根: 5.0
print(math.pow(2, 3)) # べき乗: 8.0
print(math.floor(3.7)) # 切り捨て: 3
print(math.ceil(3.2)) # 切り上げ: 4
Python2. random – 乱数生成
import random
print(random.randint(1, 6)) # 1〜6のランダムな整数
print(random.choice(['A', 'B', 'C'])) # リストからランダム選択
print(random.random()) # 0.0〜1.0の小数
PythonAIの世界ではどう使われるの? 🤖
AIの学習では、データをランダムに並び替えたり、一部をランダムに選んで学習に使ったりします。この「ランダム性」が、AIが偏りなく学習するために重要なのです。
3. datetime – 日付・時刻
from datetime import datetime
now = datetime.now()
print(now) # 2025-09-16 14:30:25.123456
print(now.year) # 2025
print(now.month) # 9
print(now.strftime('%Y年%m月%d日')) # 2025年09月16日
Python4. os – OS操作
import os
print(os.getcwd()) # 現在のディレクトリ
os.makedirs('data', exist_ok=True) # フォルダ作成
print(os.listdir('.')) # ファイル一覧
Python外部ライブラリのインストール
外部ライブラリはpip(ピップ)というツールでインストールします。
インストール方法
ターミナル(コマンドプロンプト)で実行:
pip install numpy
pip install pandas matplotlib
Pythonインストール確認
import numpy as np
print(np.__version__) # バージョン表示: 1.24.3 など
Pythonよくあるエラーと対処法
| エラーメッセージ | 原因と対処法 |
|---|---|
No module named 'xxx' | インストールされていない → pip install xxx |
pip: command not found | Pythonのパスが通っていない → python -m pip install xxx |
| 権限エラー | 管理者権限が必要 → pip install --user xxx |
AI・データサイエンスで必須のライブラリ
AI開発でよく使われる「Big 3」を紹介します。
1. NumPy – 数値計算の基盤
できること: 高速な配列計算、行列演算
import numpy as np
# 配列作成
arr = np.array([1, 2, 3, 4, 5])
print(arr * 2) # [2 4 6 8 10]
print(arr.mean()) # 平均: 3.0
# 2次元配列(行列)
matrix = np.array([[1, 2], [3, 4]])
print(matrix.T) # 転置行列
PythonAIの世界ではどう使われるの? 🤖
画像は数値の巨大な配列です。例えば1920×1080のカラー画像は、約600万個の数値で表現されます。NumPyはこれらを高速に処理できるため、画像認識AIの土台となっています。
2. Pandas – データ分析の必須ツール
できること: 表形式データの読み込み・加工・分析
import pandas as pd
# CSVファイルを読み込み
df = pd.read_csv('data.csv')
print(df.head()) # 最初の5行を表示
print(df['age'].mean()) # age列の平均
print(df[df['age'] > 30]) # 30歳以上を抽出
Pythonデータの例:
| name | age | city |
|---|---|---|
| Alice | 25 | Tokyo |
| Bob | 30 | Osaka |
| Carol | 35 | Tokyo |
3. Matplotlib – グラフ描画
できること: データの可視化、グラフ作成
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.xlabel('X軸')
plt.ylabel('Y軸')
plt.title('簡単なグラフ')
plt.show()
Python※ 詳しくは次回の第10回で解説します!
ライブラリの選び方
| 判断基準 | チェックポイント |
|---|---|
| ⭐ 人気度 | GitHub Starsやダウンロード数 |
| 📚 ドキュメント | 公式ドキュメントが充実しているか |
| 🔄 更新頻度 | 最終更新日が最近か |
| 👥 コミュニティ | Stack Overflowでの質問数 |
| 🏢 開発元 | 信頼できる組織か個人か |
まとめ
今回は、Pythonの能力を飛躍的に拡張するライブラリについて学びました。
今回のポイント
✅ ライブラリ = 便利な機能の詰め合わせパック
✅ 標準ライブラリ = 最初から使える(math, random, datetimeなど)
✅ 外部ライブラリ = pip installでインストール(numpy, pandas, matplotlibなど)
✅ インポート方法 = import ライブラリ as 短縮名 が推奨
✅ AI開発の必須3ライブラリ = NumPy(数値計算)、Pandas(データ分析)、Matplotlib(可視化)
実践のヒント
- まずは標準ライブラリから: 追加インストール不要で学習しやすい
- 公式ドキュメントを読む習慣: 各ライブラリの公式サイトには豊富な例が載っている
- 小さく始める: 全機能を覚えようとせず、必要な機能から使ってみる
次回予告
次回の[第9回: ファイルの読み込みと書き込み]では、Pythonでテキストファイルやデータファイルを扱う方法を学びます。データをファイルに保存したり、大量のデータを読み込んで処理したりする実践的なスキルを身につけましょう!
練習問題
以下のコードを実行して、ライブラリの使い方に慣れましょう。
# 問題1: mathライブラリで円の面積を計算
import math
radius = 5
area = math.pi * radius ** 2
print(f"半径{radius}の円の面積: {area:.2f}")
# 問題2: randomでサイコロを10回振る
import random
results = [random.randint(1, 6) for _ in range(10)]
print(f"サイコロの結果: {results}")
# 問題3: datetimeで今日が何曜日か表示
from datetime import datetime
weekdays = ['月', '火', '水', '木', '金', '土', '日']
today = datetime.now().weekday()
print(f"今日は{weekdays[today]}曜日です")
Pythonチャレンジ問題:
NumPyをインストールして、1から100までの数値の配列を作り、その平均・最大値・最小値を求めてみましょう!
↓↓↓答え
import numpy as np
arr = np.arange(1, 101)
print(f"平均: {arr.mean()}")
print(f"最大: {arr.max()}")
print(f"最小: {arr.min()}")

コメント