pipでPythonのパッケージ管理する方法【インストール・アップデート】のイメージ画像

pipでPythonのパッケージ管理する方法【インストール・アップデート】

  • 公開日:2018/10/07
  • 更新日:2018/10/19
  • 投稿者:n bit

Pythonのパッケージ管理ツールpip。今回はpipの基本的な知識や頻繁に利用するコマンド、その使い方などを解説。パッケージの検索方法からインストール、アップグレード、アンインストール、環境移行用の一括インストールなどが行えます。

  • Python

この記事は約 分で読めます。(文字)

Pythonのpipとは

pipとは、Pythonのサードパーティー製パッケージを管理するためのツールです。外部ライブラリーのインストールやアップデートの作業を簡単に行えるようにしてくれます。

Pythonにはインストールした時点で公式の便利なパッケージも数多くインストール済みです。pipもその一つですが、それ以外にも外部ライブラリーとしてたくさんのパッケージが「Python Package Index(pypi)」に公開されています。

 Python Package Index(pypi)

 Python Package Index(pypi)で公開されているパッケージを自分でダウンロードしてセットアップすることも可能です。

Python Package Index(pypi)ダウンロード

しかし扱うパッケージの量が増えてきたりその後のアップデートなども考えるとあまり手動で管理したいものではありませんよね。

そこでpipによってすでに開発され数多く公開されているパッケージを簡単にインストールして簡易に管理できるようにしたことで誰でも有効活用しやすくなりました。

pipの基本コマンドと使い方

pipでよく使う基本的なコマンドとその使い方を用途別で解説します。

コマンドはすべてターミナルからの入力です。ターミナルを起動して紹介するコマンドを実際に入力してみてください。

pipのバージョンを確認

pip自体の現在のバージョンを確認します。

$ pip -V

出力結果

pip 18.0 from /Users/○○○/.pyenv/versions/3.7.0/lib/python3.7/site-packages/pip (python 3.7)

現在インストールされているpipのバージョンとそのインストール場所が表示されます。

pipのアップデート

pip自体のアップデートです。

$ pip install --upgrade pip

出力結果

Successfully installed pip-18.0

正常にアップデートされましたら「Successfully」のメッセージとインストールされたpipのバージョンが表示されます。

Pythonにインストールされているパッケージを一覧確認

Pythonにpipを使ってインストールされているパッケージを一覧で確認します。

$ pip list

出力結果

Package    Version

---------- -------
pip 10.0.1
setuptools 39.0.1

オプション設定を利用することでjson形式での出力も可能です。

$ pip list --format=json

出力結果

[{"name": "pip", "version": "18.0"}, {"name": "setuptools", "version": "39.0.1"}]

インストールできるパッケージを検索

pipを使ってインストールすることができるパッケージのリストを検索方法です。検索文字列を含むパッケージのリストを結果として返します。

$ pip search 検索文字列

新しいパッケージをインストール

pipを使って新しいパッケージをインストールする方法です。

$ pip install パッケージ名

通常はそのまま新しいパッケージをインストールしますと最新バージョンがインストールされます。インストールするバージョンを指定したい場合はパッケージ名の後にバージョン番号を追加しましょう。

$ pip install パッケージ名==バージョン番号

パッケージをアップグレード

pipを使ってインストール済みのパッケージをアップグレードする方法です。古いバージョンは自動でアンインストールしてくれます。

$ pip upgrade パッケージ名 -upgrade

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

pipを使ってインストール済みのパッケージをアンインストールする方法です。

$ pip uninstall パッケージ名

パッケージの詳細を表示

パッケージの詳細を表示する方法です。

$ pip show パッケージ名

Pythonにインストールされているパッケージをrequirements形式で出力

Pythonにpipを使ってインストールされているパッケージをrequirements形式で出力します。requirements形式はインストールするパッケージを一覧リストで一括指定する方式で環境を丸ごと移行する場合などに便利です。

$ pip freeze

出力結果

beautifulsoup4==4.6.3

Django==2.1.2
django-admin-sortable==2.1.8
django-reversion==3.0.0
Pillow==5.3.0
pytz==2018.5
six==1.11.0

Pythonにパッケージを一括インストール

Pythonにrequirements.txtを使ってパッケージを一括インストールする方法です。

requirements.txtファイルを作りpip freezeで出力した内容をペーストして保存します。通常のインストールコマンドにオプションの-rをつけてrequirements.txtを指定することでrequirements.txt内に指定されているパッケージの一括インストールが開始されます。

$ pip install -r requirements.txt

pipのヘルプを表示

pipにはここで紹介したコマンド以外にも便利なコマンドが用意されています。ヘルプを表示させそれらのコマンドを一覧で確認してください。

$ pip help

出力結果

Usage:   

pip <command> [options]

Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
help Show help for commands.

General Options:
-h, --help Show help.
--isolated Run pip in an isolated mode, ignoring environment variables and user configuration.
-v, --verbose Give more output. Option is additive, and can be used up to 3 times.
-V, --version Show version and exit.
-q, --quiet Give less output. Option is additive, and can be used up to 3 times (corresponding to WARNING, ERROR, and CRITICAL logging
levels).
--log <path> Path to a verbose appending log.
--proxy <proxy> Specify a proxy in the form [user:passwd@]proxy.server:port.
--retries <retries> Maximum number of retries each connection should attempt (default 5 times).
--timeout <sec> Set the socket timeout (default 15 seconds).
--exists-action <action> Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup, (a)bort).
--trusted-host <hostname> Mark this host as trusted, even though it does not have valid or any HTTPS.
--cert <path> Path to alternate CA bundle.
--client-cert <path> Path to SSL client certificate, a single file containing the private key and the certificate in PEM format.
--cache-dir <dir> Store the cache data in <dir>.
--no-cache-dir Disable the cache.
--disable-pip-version-check
Don't periodically check PyPI to determine whether a new version of pip is available for download. Implied with --no-index.
--no-color Suppress colored output

今日のdot

pipはPython用に用意されている便利な外部パッケージを簡易にインストールや管理できるようにするためのパッケージ管理ツールです。

Pythonの環境構築時には必ず利用するツールとなりますので基本的なコマンドは覚えておきましょう。