pyenv + virtualenv の環境を pipenv 乗り換え時のメモを残しておきます。乗り換えは非常に簡単です。
- requirements.txt を作成する
- .python-version を削除する
- pipenv install を実行する
1. requirements.txtを作成する
pipenv
実行時に requirements.txt がある場合、読み込んでくれるのであらかじめ作っておきます。すでに存在する場合はこの作業は必要ありません。
pip freeze
を実行するとインストール済みパッケージが出力されるので、それを requirements.txt に出力します。
$ pip freeze > requirements.txt
2. .python-versionを削除する
pyenv と virtual-env で仮想環境を作成している場合、Pythonのバージョンは .python-version
に記録されています。
この時点で乗り換え対象のプロジェクトのPythonのバージョンを確認しておきましょう。以下のいずれの方法でも構いません。
$ python --version
python> import platform python> pratform.python_version()
バージョンを確認したら .python-version
は乗り換えにあたって不要となるので削除しておきましょう。
3. pipenv を使う
pipenvはバージョン直接指定とn系指定ができます。
pipenvでは pipenv install
と pipenv --python x.x.x
の2つのコマンドで環境構築できます。
pipenv install
実行時に requirements.txt があればそれを読み込み必要なパッケージもインストールしてくれます。
$ pipenv install
$ pipenv --python 3.6.2 $ pipenv --three $ pipenv --two
requirements.txt に含まれているパッケージは、Pipfileに記載されているので確認してみてください。作成した環境へのスイッチングは、pipenv shell
で可能です。 pipenv shell
実行後、 python --version
や which python
で念のため確認しておくと良いです。