こんにちは、デジタルボーイです。Pythonを使う上で、強い味方となるpipについて、本記事では徹底的に解説したいと思います!

デジタルボーイです。
データサイエンス歴20年以上のおっさんです。中小企業診断士として、データサイエンス、WEBマーケティング、SEOに関するデータ分析、コンサルティングの仕事をしています。自己紹介の詳細はコチラ
pipって何?
pipは効率的にpythonにパッケージをインストールしてくれるツール
pythonは、インストールした状態でそのまま使うことはほぼなく、開発有志が公開しているパッケージというPythonに組み込むことができる便利なツール群をインストールすることで、初めて力を発揮します。
で、この、パッケージをインストールする際に、いちいち、パッケージを公開しているサイトに行って、ファイルをダウンロードして、インストールボタンをクリックして。。。をやっているととんでもなく面倒ですよね!
Pythonでプログラミングをする際は、かなり多くのパッケージをインストールしていきますが、この際、いちいち、パッケージ公開サイトに行ってファイルをダウンロードしてインストールいなくても、ターミナルという黒い画面で、短いコマンドをちゃちゃっと打つことでダウンロードからインストールまで自動的にやってもらえると、とても助かります。
この、とても助かることをやってくれるのがpipになります。
pipはコマンドでパッケージをインストールする
例えば、numpyというPythonパッケージをインストールしたい場合、ターミナルから、次の一文を入力するだけで、最新版のファイルのダウンロードからインストールまで、一気にやってくれます。
% pip install numpy
上のコマンドは「 pip install [パッケージ名]」という命令です。パッケージ名の箇所は都度、変更することで、さまざまなパッケージをPythonにインストールすることができます。
ここら辺のpipのインストールや簡単な使い方については以下にまとめてあるので、さくっとみたい方はこちらを参照ください。

また、特にMacOSで上の記事でインストールができなかった場合は、以下にさらに詳しいインストール方法を記載しているので、確認してください。

pip installにはいろいろなオプションがある!
また、pip installでは以下のようなオプションもあります。
オプション | 用途 |
---|---|
-r, –requirement ファイル名 | 指定したファイルに記載されているパッケージをまとめてインストールする |
-U, –upgrade | インストール済みのパッケージを最新版にアップグレードする |
-v, –verbose | 詳細な実行ログを表示する |
-q, –quiet | 警告やエラー以外のメッセージを表示しない |
–user | ユーザー環境にのみパッケージをインストールする |
–no-deps | 依存パッケージをインストールしない |
–pre | プレリリース版やベータ版のパッケージもインストール対象とする |
-i, –index-url <url> | パッケージのダウンロード元となるPyPIのURLを指定する |
–extra-index-url <url> | 追加のパッケージインデックスURLを指定する |
–no-cache-dir | キャッシュを使用せずに直接パッケージをダウンロードする |
例えばオプションを使うことで、ある環境に導入したパッケージを一発で全部インストールする・・・などなど、これらを使いこなすことで、いろんな場面で効率よく、パッケージを導入できます。オプションについては以下に解説しているので、よかったら参考にしてみてください。(オプション一覧の各項目をクリックすると、下のリンクの該当箇所にジャンプします))

なお、今回は、pipのリファレンスガイドに準拠し、記事を作っています。ただ、全てのオプションを列挙しているわけではないので、詳細が知りたい場合、リファレンスガイドについても確認してください。
pipにはいろんなコマンドがある!
pipはパッケージをインストールするだけではなく、他にも付随したコマンドがいろいろあります。
基本的なところでは以下の感じです。
基本的なインストール
% pip install numpy
Collecting numpy
Downloading numpy-1.24.3-cp310-cp310-macosx_11_0_arm64.whl (13.8 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 13.8/13.8 MB 1.2 MB/s eta 0:00:00
Installing collected packages: numpy
Successfully installed numpy-1.24.3
バージョン指定でインストール
% pip install pandas==2.0.0
Collecting pandas==2.0.0
Downloading pandas-2.0.0-cp310-cp310-macosx_11_0_arm64.whl (10.8 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.8/10.8 MB 2.1 MB/s eta 0:00:00
Installing collected packages: pandas
Successfully installed pandas-2.0.0
最新バージョンにアップグレード
% pip install --upgrade requests
Requirement already satisfied: requests in ./env/lib/python3.10/site-packages (2.28.2)
Collecting requests
Downloading requests-2.31.0-py3-none-any.whl (62 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 KB 998.4 kB/s eta 0:00:00
Installing collected packages: requests
Successfully installed requests-2.31.0
その他、コマンドについては以下に詳しく解説しているので参照してください。

pipでインストール済みパッケージをアップデートするには
また、pipで以前にパッケージをインストールしたが、そのパッケージが古くなったような場合もよくあります。このような場合には、pipでインストール済みパッケージをアップデートすることも可能です。
pip install --upgrade numpy
(もしくは)
pip install -U numpy
アップデート関連については以下に詳しく解説しているのでよかったら参考にしてください。

pip installのバージョン指定方法
pip installでは、以下のように、numpy
をインストールした場合、
pip install numpy
PyPI(Python Package Index)というpythonパッケージを管理しているところにある最新の安定バージョンが自動的にインストールされます。
ただし、お使いの環境で最新版ではなく、バージョンを指定したい場合もあると思います。このような場合には、以下のようにバージョン番号を明示します。
pip install numpy==1.21.0
バージョン指定についてさらに詳しく確認したい場合は、以下をご参照ください。

複数のパッケージを一度にインストール
複数のパッケージを一括インストールする方法は以下のように2つあります
方法1: スペース区切りで複数指定
% pip install numpy pandas matplotlib
方法2: requirements.txtを使用
% pip freeze > requirements.txt
% pip install -r requirements.txt
複数パッケージの一括インストールについては、以下に詳しく解説しているので、よかったら参考にしてください。

インストールしたパッケージを確認する
pipは超便利なツールですが、どんどんパッケージをインストールすることで、何をインストールしたのか忘れてしまうこともあります。そんな時、Python環境の全てのパッケージを確認したい場合、pip listのコマンドで実行できます。
% pip list
pip listの便利な使い方については以下にもまとめてあるので、ご参照ください。

ローカルにダウンロードしたパッケージをpipでinstallする
pipではインターネット上のパッケージをインストールしますが、そうではなくローカルにあるパッケージをインストールしたい場合もケースによってはあります。そのような場合は、以下のコマンドを使用します
% pip install --no-index --find-links=./downloads numpy
このコマンドで使用するオプションの説明:
--no-index
: PyPIからのダウンロードを無効化--find-links=パス
: パッケージを探すフォルダを指定
ローカルパッケージのインストール法については以下に詳しく手順を載せているのでご参照ください。

pip installのトラブルシューティング
僕がpip installを使っていて、個人的に失敗するケースとして以下の6つのケースがあります。
- ケース1: パッケージ名の誤り!
解決法:正式なパッケージ名を検索する - ケース2: pipのバージョンが古い!
解決法:パッケージインストール前に必ず、pipを更新する! - ケース3: 依存関係が競合している!
解決法:仮想環境を利用する! - ケース4: ユーザーの権限が不足している!
解決法:とりあえず、sudoをつけてみる! - ケース5: pythonバージョンとの互換性がない!
解決法:pythonかパッケージか、どっちかのバージョンを合わせる! - ケース6: インターネット接続できていない!
解決法:インターネット接続を確立!
ここら辺の解決法については以下にまとめてあるので、ご参照ください。

各種パッケージのインストール例
では、最後にそれぞれのパッケージのインストール例を挙げていきます。
requestsをインストールする方法
% pip install requests

詳細については、上記も確認ください。
pipでmatplotlibをインストールする方法
pip install matplotlib

詳細については、上記も確認ください。
PyTorchをインストールする方法
pip install torch torchvision

詳細については、上記も確認ください。
numpyをインストールする方法
pip install numpy

詳細については、上記も確認ください。
pandasをインストールする方法
pip install pandas

詳細については、上記も確認ください。
scikit-learn(sklearn)をインストールする方法:
pip install scikit-learn

詳細については、上記も確認ください。
cv2(OpenCV-Python)のインストール方法
pip install opencv-python
それぞれは以下に詳細を掲載しているので、よかったらみてください

まとめ
以上、pipについての徹底解説でした!