Pipenv の使い方

2022年11月13日

はじめに

Pipenv は、プロジェクトごとに (仮想) 環境を作るための仕組みである。

バージョン

  • Ubuntu 20.04 LTS
  • Python 3.9.5
  • pipenv 2022.10.25

pipenv のインストール

$ pip install pipenv

バージョン 2022.11.4 だとうまく動かなかった。バージョンを指定する。

$ pip install "pipenv==2022.10.25"

参考

設定

プロジェクトディレクトリ下に仮想環境を作るようにする。

~/.bashrc など

export PIPENV_VENV_IN_PROJECT=1

すでに仮想環境内にいる場合は、環境変数に PIPENV_IGNORE_VIRTUALENVS=1 を設定しておく。

export PIPENV_IGNORE_VIRTUALENVS=1

プロジェクトの作成と利用

ディレクトリを作る。

$ mkdir project
$ cd project

Python のバージョンを指定する。

$ pipenv --python 3.9

空の環境ができ、Pipfile が作成される。

※プロジェクトディレクトリ下に仮想環境を作るようにしている場合、プロジェクトディレクトリの .venv に仮想環境が構築される。.venv/bin/activate でふつうに仮想環境を有効化できる。

パッケージをインストールする。

$ pipenv install numpy

パッケージがインストールされ、Pipfile.lock が作成される。

仮想環境に入る。

$ pipenv shell
(project) $ python
...
>>> import numpy
>>>

exit で仮想環境から抜ける。

(project) $ exit

いろいろ

開発用のパッケージ

開発用のパッケージを別途インストールできる。

$ pipenv install --dev パッケージ

仮想環境の削除

$ pipenv --rm

仮想環境の再構築1

Pipfile から仮想環境を作成する。

$ pipenv update

仮想環境の再構築2

Pipfile から Pipfile.lock を作成する。

$ pipenv lock

Pipfile.lock からパッケージをインストールする。

$ pipenv sync

仮想環境の再構築3

Pipfile.lock から requirements.txt を作成する。

$ pipenv requirements > requirements.txt

開発用パッケージを含めるには、"--dev" を指定する。

$ pipenv requirements --dev > requirements.txt

requirements.txt からパッケージをインストールする。

$ pipenv install -r requirements.txt