Python
virtualenv
pyenv-virtualenv

(注意) pyenv-virtualenv と virtualenv は別のプロダクトです

pyenv-virtualenvvirtualenv を混同している記事をたまに見かけるので、注意喚起です。

概要

pyenv とともに仮想環境を使いたいとき、 pyenv のプラグインである pyenv-virtualenv を使うことがあります。
この pyenv-virtualenv は、 virtualenv とは別のものです。

両者を混同している記事がQiita にもありますが、
以下を見るとわかるように、それぞれ別プロダクトです。ご注意を。

pyenv-virtualenv

pyenv のプラグインで、 pyenv virtualenv コマンドを使えるようにするもの。

公式サイト

https://github.com/pyenv/pyenv-virtualenv

使用例

新しい仮想環境を作るには、
$ pyenv virtualenv {pythonバージョン} {仮想環境のディレクトリ}
を実行します。

例:
$ pyenv virtualenv 2.7.10 my-virtual-env-2.7.10
(公式サイトより)

補足

内部的には virtualenv を呼び出しているようです。
(はっきりとは書いていませんが)公式ページに以下のようにあります。

pyenv-virtualenv uses python -m venv if it is available and the virtualenv
command is not available.

(venv は virtualenv が Python 公式に取り入れられたものです (Python 3.3 以降で使用可能))

virtualenv

公式サイト

https://github.com/pypa/virtualenv
https://virtualenv.pypa.io/en/stable/

使用例

新しい仮想環境を作るには、
$ virtualenv {仮想環境ディレクトリ名}
を実行します。
例:
$ virtualenv my-virtual-env

なお -p オプションによって、特定の Python インタープリタを指定することもできます。

補足

pyenv-virtualenvwrappervirtualenvwrapper もまた、それぞれ別のプロダクトです。