pipとは?使い方から様々なオプションを活用した応用例までについて詳しく解説します。
pipって何?
pip(Python Package Installerの略。読み方は「ピップ」)は、Pythonのライブラリ(パッケージ)をインターネットから簡単にインストールしたり、更新・削除するためのコマンドラインツールです。スマホのアプリストアのように、Pythonの機能を追加する“拡張機能”を入れるイメージです。Python 3.4以降では標準で付属しており、特別な設定なしで使えます。
本ページでは、Python初心者でも理解できるよう、環境確認からインストールまで順を追って説明します。
pipの環境確認とインストール
① ターミナルもしくはコマンドを開いて以下のコマンドを実行し、pipがインストールされているか確認しましょう。
pip --version
【正常な出力例】
pip 23.3.1 from /usr/local/lib/python3.11/site-packages/pip (python 3.11)
② pipを使ってPythonライブラリ(パッケージ)をインストールする場合、以下のコマンドを実行します。
pip install ライブラリ名
pipでよく行う操作
③ 以下のコマンドを実行すると、インストール済みのライブラリの一覧が表示されます。
pip list
④ 特定のバージョンをインストールするには、ライブラリ名の横に「==バージョン番号」を付けます。
pip install ライブラリ名==1.24.0
⑤ 不要になったライブラリは、以下のコマンドを実行することで削除できます。
pip uninstall ライブラリ名
サブコマンド
サブコマンドとは、pipに「何をしてほしいか」を指定する命令のことです。たとえば、pipに「ライブラリをインストールして」と指示するには、install
というサブコマンドを使います。
pipは万能なツールですが、何をするかはサブコマンドで決まります。
pip サブコマンド [オプション] [対象]
例えば、requestsというライブラリをインストールしたい場合、以下のようにコマンドを書きます。
pip install requests
pip → ツール本体
install → サブコマンド(ツールで何をするか)
requests → 対象(インストールしたいライブラリ)
よく使うサブコマンド一覧
pipでよく使うサブコマンドの一覧を以下にまとめました。
サブコマンド | 説明 | 使用例 |
---|---|---|
install |
パッケージをインストール | pip install numpy |
uninstall |
パッケージを削除 | pip uninstall pandas |
list |
インストール済み一覧表示 | pip list |
freeze |
バージョン付き一覧を出力 | pip freeze > requirements.txt |
show |
パッケージの詳細情報表示 | pip show flask |
check |
依存関係の整合性を確認 | pip check |
download |
パッケージをダウンロード(インストールはしない) | pip download requests |
search |
パッケージを検索(※非推奨) | pip search flask |
config |
pipの設定を管理 | pip config list |
cache |
pipのキャッシュを操作 | pip cache dir |
debug |
pipの環境情報を表示 | pip debug |
help |
ヘルプを表示 | pip help |
オプション
オプションとは、サブコマンドの細かい動作を設定する“追加の指示”のことです。オプションはpipに限らず、LinuxのコマンドやGitなど、多くのツールで使われる基本概念です。 たとえば、「pip install requests」というコマンドは、pipに「requestsっていうライブラリをインストールして」と伝えているため、pipは「普通にインストール」します。 もし「最新版にアップデートして」「特定の古いバージョンでインストールして」など、細かい要望を追加したいとき、オプションを指定します。
例
以下は、オプションを指定せずに単にrequestsをインストールします。
pip install requests
以下は、オプション--upgrade
を指定し、requestsを最新版にアップデートします。
pip install --upgrade requests
要素 | 意味 |
---|---|
pip | コマンド(何をするか) |
install | サブコマンド(何に対して何をするか) |
–upgrade(オプション) | どう動作してほしいかの追加指示 |
ちなみに、オプションは短縮形も用意されていることが多いです。pipでも例えば以下のような短縮形が存在します。
- 短い形式(短縮) →
-r
,-U
,-v
など - 長い形式(読みやすい) →
--requirement
,--upgrade
,--verbose
など
つまり、「pip install –U requests」と書いて実行しても、「pip install –upgrade requests」と同じ動作を行います。
pip install の主要オプション一覧
オプション | 説明 | 使用例 |
---|---|---|
-r / --requirement |
ファイルから一括インストール | pip install -r requirements.txt |
-U / --upgrade |
最新バージョンにアップグレード | pip install -U numpy |
--user |
ユーザー環境にインストール | pip install --user pandas |
--no-deps |
依存パッケージをインストールしない | pip install --no-deps flask |
--pre |
プレリリース版も対象にする | pip install --pre tensorflow |
-i / --index-url |
インストール元URLを指定 | pip install -i https://pypi.org/simple/ requests |
--extra-index-url |
追加のインデックスURLを指定 | pip install --extra-index-url https://my.repo/simple mypkg |
--no-cache-dir |
キャッシュを使わずにインストール | pip install --no-cache-dir requests |
-v / --verbose |
詳細なログを表示 | pip install -v pandas |
-q / --quiet |
出力を抑える | pip install -q numpy |
--proxy |
プロキシ経由でインストール | pip install --proxy http://proxy.server:port flask |
--dry-run |
実際にはインストールせず依存解決のみ | pip install --dry-run fastapi |
--no-input |
対話的な入力を無効化 | pip install --no-input flask |
--force-reinstall |
再インストールを強制 | pip install --force-reinstall pandas |
応用例
仮想環境上にパッケージをインストール
以下のコマンドを使えば、仮想環境上にパッケージをインストールできます。
python -m venv myenv # 仮想環境の作成
myenv\Scripts\activate # 仮想環境を有効化(Windows)
pip install flask # 仮想環境内にFlaskパッケージをインストール
別環境に一括インストール
① 自分のプロジェクトで使っているライブラリ一覧を保存します。
pip freeze > requirements.txt
② 前述で作成した一覧データを用いて、別環境に一括インストールします。
pip install -r requirements.txt
練習問題
本ページで学んだ内容を定着させるとともに、「Python 3 エンジニア認定基礎試験」や「基本情報技術者試験」の対策にも役立つ練習問題を用意しましたので、チャレンジしてみてください。
【問題1】基本的なインストール(難易度★☆☆☆☆)
HTTP通信を扱うライブラリ「requests」を通常インストールする正しいコマンドを選びなさい。
A.
pip add requests
B.
pip install requests
C.
pip get requests
D.
pip setup requests
解説:
・ パッケージのインストールは
pip install パッケージ名
を用います。例えば pip install requests
が正しいです。・
add
や get
、setup
は pip のサブコマンドとして存在しません。【問題2】バージョン指定インストール(難易度★☆☆☆☆)
特定のバージョン 1.24.0 の numpy をインストールする正しいコマンドを選びなさい。
A.
pip install numpy==1.24.0
B.
pip install numpy=1.24.0
C.
pip install numpy:1.24.0
D.
pip install numpy --version 1.24.0
解説:
・ バージョン指定は
パッケージ名==バージョン番号
の形式を用います(例:pip install numpy==1.24.0
)。・
=
や :
、--version
指定はインストール対象バージョンの指定方法としては無効です。【問題3】アップグレードのショートオプション(難易度★☆☆☆☆)
requests を最新にアップグレードする際のショートオプションを用いた正しいコマンドを選びなさい。
A.
pip install -U requests
B.
pip install -G requests
C.
pip install -L requests
D.
pip upgrade requests
解説:
・ アップグレードは
--upgrade
またはショートの -U
で指定します。・
-G
や -L
は該当する意味を持たず、pip upgrade
というサブコマンドも存在しません。【問題4】インストール済み一覧の表示(難易度★☆☆☆☆)
インストール済みパッケージの一覧を表示する正しいコマンドを選びなさい。
A.
pip show
B.
pip list
C.
pip freeze
D.
pip check
解説:
・ 一覧は基本的に
pip list
を使います。・
pip freeze
はバージョン固定形式(requirements 互換)で一覧を出力する用途に向いています。・
pip show
は個別パッケージ情報表示、pip check
は依存関係整合性の確認です。【問題5】requirements.txtの作成と利用(難易度★★☆☆☆)
requirements.txt を作成して別環境へ一括インストールする正しい手順を選びなさい。
A.
pip list > requirements.txt
pip install -r requirements.txt
B.
pip freeze > requirements.txt
pip install -r requirements.txt
C.
pip show all > requirements.txt
pip install --all requirements.txt
D.
pip config save requirements.txt
pip install --config requirements.txt
解説:
・ エクスポートは
pip freeze > requirements.txt
を用い、インストールは pip install -r requirements.txt
を使います。・
pip list
は表示形式が requirements と互換ではないため、再現性のある一括インストールには不適です。【問題6】アンインストール(難易度★☆☆☆☆)
不要になった pandas を削除する正しいコマンドを選びなさい。
A.
pip remove pandas
B.
pip uninstall pandas
C.
pip delete pandas
D.
pip purge pandas
解説:
・ 削除は
pip uninstall パッケージ名
を用います。・
remove
、delete
、purge
といったサブコマンドは pip では提供されていません。【問題7】プレリリース版のインストール(難易度★★☆☆☆)
tensorflow のプレリリース版も候補に含めてインストール対象にする適切なオプションはどれか。
A.
pip install tensorflow --beta
B.
pip install tensorflow --pre
C.
pip install tensorflow --dev
D.
pip install tensorflow --snapshot
解説:
・ プレリリース(pre-release)版も対象にするには
--pre
を指定します。・
--beta
や --dev
、--snapshot
は pip 標準のオプションではありません。【問題8】インデックスURLの指定(難易度★★☆☆☆)
PyPI 以外のインデックス URL を指定して requests をインストールする正しいコマンドを選びなさい。
A.
pip install requests --index-url https://pypi.org/simple/
B.
pip install -i https://pypi.org/simple/ requests
C.
pip install --url https://pypi.org/simple/ requests
D.
pip install requests --source https://pypi.org/simple/
解説:
・ インデックス URL は
-i
または --index-url
で指定できます。・ 位置は
pip install
の後にオプション→パッケージの順でも、パッケージ→オプションの順でも機能しますが、一般的には A/B のようにオプションを先に書く形が多いです。・
--url
や --source
はインデックス指定のオプションではありません。【問題9】キャッシュを使わないインストール(難易度★★☆☆☆)
キャッシュを使わずに requests をインストールする正しいコマンドを選びなさい。
A.
pip install requests --no-cache
B.
pip install --no-cache-dir requests
C.
pip install requests --nocache
D.
pip install -N requests
解説:
・ キャッシュ不使用は
--no-cache-dir
を指定します。・
--no-cache
や --nocache
、-N
などのオプションは pip で定義されていません。【問題10】依存関係の整合性確認(難易度★☆☆☆☆)
インストール済みパッケージの依存関係の整合性をチェックする正しいコマンドを選びなさい。
A.
pip verify
B.
pip check
C.
pip audit
D.
pip inspect
解説:
・ 依存関係の整合性確認は
pip check
を使用します。・ 他の選択肢は pip の標準サブコマンドとして用意されていません。
関連ページ(もっと学びたい人へ)
Pythonの基礎から応用例まで、以下ページから学ぶことができます。

コメント