Pythonで便利な外部ライブラリ(パッケージ)を使うなら、管理ツールの基本であるpipを確実に使いこなすことが近道です。
本記事では初心者が最短で実務に使えるように、よく使うpipコマンド10個に絞って、使い方と注意点、実行例と出力例まで丁寧に解説します。
pipとは?Pythonの外部ライブラリを管理する基本
pipの役割とパッケージ管理の流れ
pipはPython公式のパッケージ管理ツールで、Python Package Index(略称PyPI)から外部ライブラリをダウンロードし、依存関係も含めてインストール・アップグレード・アンインストールを行います。
Pythonを学び始めたら、最初に身につけるべきツールの1つです。
パッケージとは
外部ライブラリは他者が公開している便利なコードのまとまりで、requests
(HTTPクライアント)、numpy
(数値計算)、pandas
(データ解析)などが代表例です。
pipはこれらをPyPIから取得し、ローカルの環境に配置します。
基本の流れ
プロジェクトで外部ライブラリを使う流れは大まかに以下です。
文章で把握しておくと迷いません。
- 使いたいライブラリを決める
- 仮想環境を用意する(例:
python -m venv .venv
) - pipでインストールする(例:
python -m pip install requests
) - Pythonコードから
import
して使う - 必要に応じてアップグレードやアンインストールを行う
ポイントは、プロジェクトごとに仮想環境を分けてインストールすることです。
これによりバージョン衝突を避けられます(仮想環境の詳細は別記事で扱います)。
インストールの確認
インストール後はPythonからバージョンを確認できます。
# サンプル: requests が使えるかとバージョンを確認
import requests
print("requests version:", requests.__version__)
requests version: 2.32.3
安全な実行方法(python -m pip)
最も重要な原則は、pipをpython -m pip
経由で実行することです。
これは「今使っているPythonインタプリタに対してpipを実行する」という意味で、複数のPythonが入っている環境での取り違えを防ぎます。
OS別の安全な呼び出しは次の通りです。
# macOS/Linux の例
python3 -m pip --version # 使っているpipのバージョンと場所を確認
which python3 # どのPythonかを確認
which pip # 参考: システムのpipは別物の可能性
# Windows (PowerShell) の例
py -m pip --version # Windowsは "py" ランチャー経由が安全
where.exe py
where.exe pip
pip 24.2 from /path/to/.venv/lib/python3.11/site-packages/pip (python 3.11)
システム全体に影響するsudo pip
や、意図しないPythonに紐づくpip
単体の実行は避けましょう。
仮想環境内でpython -m pip
を使うのが最善です。
これだけ覚えるpipコマンド10選
最初に全体像を一覧で整理します。
以降で個別に詳しく解説します。
コマンド | 用途 | 例 |
---|---|---|
pip install パッケージ名 | 新規インストール | python -m pip install requests |
pip install パッケージ名==バージョン | バージョン固定でインストール | python -m pip install numpy==1.26.4 |
pip install -U パッケージ名 | 既存のパッケージをアップグレード | python -m pip install -U requests |
pip uninstall パッケージ名 | アンインストール | python -m pip uninstall requests |
pip list | インストール済み一覧 | python -m pip list |
pip list –outdated | 更新可能の一覧 | python -m pip list --outdated |
pip show パッケージ名 | 詳細情報の表示 | python -m pip show pandas |
pip check | 依存関係の不整合を確認 | python -m pip check |
pip index versions パッケージ名 | 利用可能バージョンの確認 | python -m pip index versions numpy |
python -m pip install -U pip | pip本体のアップデート | python -m pip install -U pip |
以降の例は仮想環境が有効であることを前提に、python -m pip
形式で記載します。
pip install パッケージ名: インストール
用途
新しくパッケージを導入します。
依存関係も自動で一緒に入ります。
# HTTPクライアント requests をインストール
python -m pip install requests
Collecting requests
Downloading requests-2.32.3-py3-none-any.whl ...
Collecting certifi>=2017.4.17
Collecting charset-normalizer<4,>=2
Collecting idna<4,>=2.5
Collecting urllib3<3,>=1.21.1
Installing collected packages: certifi, idna, charset-normalizer, urllib3, requests
Successfully installed certifi-2024.7.4 charset-normalizer-3.3.2 idna-3.7 urllib3-2.2.2 requests-2.32.3
ヒント
ライブラリ名はPyPIの名前を使います。
インポート名と異なる場合があるため、公式ドキュメントで確認しましょう。
pip install パッケージ名==バージョン: バージョン指定
用途
特定のバージョンに固定してインストールします。
再現性の高い環境が必要な時に使います。
# numpy を 1.26.4 に固定してインストール
python -m pip install numpy==1.26.4
Collecting numpy==1.26.4
Downloading numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.whl ...
Installing collected packages: numpy
Successfully installed numpy-1.26.4
ヒント
互換性のあるバージョン範囲(例: pandas>=2.2,<3.0
)を指定することもできます。
複数パッケージを扱う場合はrequirements.txt
の利用が便利です(別記事で解説)。
pip install -U パッケージ名: アップグレード
用途
既存のパッケージを最新(もしくは解決される最新互換版)に更新します。
--upgrade
は-U
の同義です。
# requests をアップグレード
python -m pip install -U requests
Requirement already satisfied: requests in /path/to/.venv/lib/python3.11/site-packages (2.31.0)
Collecting requests
Downloading requests-2.32.3-py3-none-any.whl ...
Installing collected packages: requests
Successfully installed requests-2.32.3
注意
大規模アップグレードは一旦テスト環境で確認しましょう。
破壊的変更が含まれる場合があります。
pip uninstall パッケージ名: アンインストール
用途
不要になったパッケージを削除します。
# requests をアンインストール
python -m pip uninstall requests
Found existing installation: requests 2.32.3
Uninstalling requests-2.32.3:
Would remove:
/path/to/.venv/lib/python3.11/site-packages/requests/*
Proceed (Y/n)? y
Successfully uninstalled requests-2.32.3
注意
他のライブラリの依存関係になっている場合は動作に影響します。
不安な時は先にpython -m pip check
を実行しましょう。
pip list: インストール済み一覧
用途
現在インストール済みのライブラリの一覧とバージョンを確認します。
python -m pip list
Package Version
------------------ -------
numpy 1.26.4
pip 24.2
setuptools 70.0.0
wheel 0.43.0
ヒント
--format=json
でJSON形式にもできます。
ツールとの連携時に便利です。
pip list –outdated: 更新可能パッケージの確認
用途
アップデート可能なパッケージを一覧表示します。
python -m pip list --outdated
Package Version Latest Type
--------- ------- -------- -----
numpy 1.26.4 2.1.0 wheel
pip 24.1 24.2 wheel
ヒント
表示された名前をそのままinstall -U
に渡せます。
pip show パッケージ名: 詳細情報の表示
用途
特定パッケージのインストール場所、依存関係、ライセンス、ホームページURLなどの詳細を確認します。
python -m pip show pandas
Name: pandas
Version: 2.2.2
Summary: Powerful data structures for data analysis, time series, and statistics
Home-page: https://pandas.pydata.org
Author: The Pandas Development Team
License: BSD-3-Clause
Location: /path/to/.venv/lib/python3.11/site-packages
Requires: numpy, python-dateutil, pytz, tzdata
Required-by: None
ヒント
トラブル時はLocationとRequiresが手がかりになります。
pip check: 依存関係の不整合を確認
用途
インストール済みライブラリ間の依存関係が壊れていないか検査します。
python -m pip check
No broken requirements found.
ヒント
不整合が出たら、表示に従ってinstall -U
やinstall パッケージ==バージョン
で調整します。
pip index versions パッケージ名: 利用可能バージョンを確認
用途
PyPIに登録されている利用可能なバージョンを一覧表示します。
特定のバージョンに固定する前の下調べに便利です。
# numpy の利用可能バージョンを確認
python -m pip index versions numpy
numpy (2.1.0)
Available versions: 2.1.0, 2.0.1, 2.0.0, 1.26.4, 1.26.3, 1.26.2, ...
INSTALLED: 1.26.4
ヒント
pip index
は比較的新しいサブコマンドです。
古いpipで使えない場合は後述の方法でpip本体を更新してください。
python -m pip install -U pip: pip本体をアップデート
用途
pip自身を最新に更新します。
トラブル時はまずpipを最新化すると解決することが多いです。
# pip 本体をアップデート
python -m pip install -U pip
Requirement already satisfied: pip in /path/to/.venv/lib/python3.11/site-packages (24.1)
Collecting pip
Downloading pip-24.2-py3-none-any.whl ...
Installing collected packages: pip
Successfully installed pip-24.2
注意
システムPythonのpipをsudoで上書きしないように、仮想環境内で実行するか、どうしても必要な場合は--user
オプションを検討します。
参考: どのPythonのpipを操作しているか確認
python -m pip --version
python -c "import sys; print(sys.executable)"
pip 24.2 from /path/to/.venv/lib/python3.11/site-packages/pip (python 3.11)
/path/to/.venv/bin/python
まとめ
pipはPythonの外部ライブラリを安全かつ再現性高く管理するための基本ツールです。
まずは10個のコマンド(install
、uninstall
、list
、show
、check
、index versions
、そしてpip本体のアップデート
)を確実に使えるようにしましょう。
特にpython -m pip
で実行すること、仮想環境を使うことを習慣化すれば、環境の取り違えや依存関係の破綻を大きく減らせます。
次のステップとしては、requirements.txtで依存関係を記録し、チームや本番環境へ同じ環境を再現する運用に進むと、より実務的な開発に対応できるようになります。