PIP の使い方

2024年2月3日

はじめに

Python のパッケージ管理システムである PIP の使い方について。

PIP の使い方

PIP のアップグレード

$ python -m pip install --upgrade pip

インストールされているパッケージの表示

$ pip list

バージョンが古くなっているパッケージを表示するには、次のようにする。

$ pip list --outdated

パッケージ情報の表示

$ pip show <パッケージ>

パッケージのファイルリストの表示

$ pip show -f <パッケージ>

パッケージの検索

$ pip search <キーワード>

かつてはこれでよかったのだが、使えなくなっている。代わりに pip-search を用いる。

インストール

$ pip install pip-search

検索

$ pip_search <キーワード>

パッケージのインストール

$ pip install <パッケージ>

バージョン指定

$ pip install "<パッケージ>==<バージョン>"

どんなバージョンがあるかわからない場合は、次のようにして確認する。

$ pip install "<パッケージ>=="

パッケージのアップデート

$ pip install -U <パッケージ>

バージョンが古くなっているパッケージをすべてアップデートするには、次のようにすればよい (Linux の場合)。ただし、アップデートに失敗するパッケージもあるので注意。

$ pip list --outdated | echo '{print $1}' | xarg -I {} pip install -U {}

パッケージの入れなおし

パッケージの調子がおかしい場合、入れなおすと直る場合がある。

$ pip install --upgrade --force-reinstall <パッケージ>

パッケージのアンインストール

$ pip uninstall <パッケージ>

環境の再現

環境の再現のために、環境のパッケージリストを得るには、次のようにする。

$ pip freeze > requirements.txt

これをもとに環境を再現 (パッケージをインストール) するには、次のようにする。

$ pip install -r requirements.txt

ふつうは仮想環境で用いる。

依存パッケージも含めた削除

pip は、パッケージを削除する際、パッケージに依存したパッケージの面倒は見るが、パッケージが依存するパッケージの面倒は見ない。たとえば、jupyterlab パッケージを入れ直したいときに、jupyterlab を削除しても jupyter までは削除してくれない。こういうときには pip-autoremove を使う。以下のようにインストールする。

$ pip install pip-autoremove

以下のように使う。

$ pip-autoremove <パッケージ>

キャッシュ

キャッシュの場所

$ pip cache dir

キャッシュを削除

$ pip cache purge

SSLエラーが出る場合

環境によっては SSL エラーで使えないことがある。その場合は、pip のオプション "--trusted-host" で "pypi.python.org"、"files.pythonhosted.org" などを追加する (エラーメッセージから判断する)。

>pip install matplotlib --trusted-host pypi.python.org --trusted-host files.pythonhosted.org

毎度長いオプションを指定するのは面倒なので、オプションが不要になるように、Windows の場合は "%appdata%¥pip" に以下のような内容の pip.ini ファイルを置いておく。

[global]
trusted-host = pypi.python.org
               files.pythonhosted.org
               pypi.org

ファイルが認識されているかどうかは、以下のコマンドで確認できる。

>pip config list

Linux の場合は ~/.pip/pip.conf として同様の内容のファイルを置けばよい。