質問: python 3仮想環境を作成する 公式のubuntuパッケージpython3-virtualenvを使用して、lubuntu 15.1にapt-get install python3-virtualenvをインストールしました。 公式ドキュメント は、私のプロジェクトディレクトリにある単純なvirtualenv .でvenvを作成するのに十分であることを示しています。 which virtualenvは何もしないので、これは何もしません。 (which python-virtualenvおよびwhich python3-virtualenvからも何もありません)。パッケージ情報をインストールすると、/usr/lib/python3/dist-packages/virtualenv.pyがインストールされたと表示されるため、これをpython3で呼び出します。それは私にこれを与えます:$ python3 /usr/lib/python3/dist-packages/virtualenv.py . running virtualenv with interpreter /usr/bin/python2 new python executable in ./bin/python2 also creating executable in ./bin/python installing setuptools, pip...done. ええ、私が見ると、。/ bin内のすべてがpython2です。 ubuntuのpython3-virtualenvはpython2のダミーパッケージですか?公式のpythonドキュメンテーションは別のパッケージを使用すると言います: python3-venv 。これはpyvenv .のときに機能するようです、./binディレクトリ。python 3 virtualenvを正常に作成するにはどうすればよいですか?
回答: venvは仮想環境を作成するための便利なスクリプトですが、virtualenvが実行できるすべての機能を完全には置き換えません。ほとんどの場合、どちらを使用しても問題ありません。 virtualenvは廃止されていません。python3 -m venvはpython3-venvをインストールした後に機能します。debianは一部のスクリプトをベースから削除するためですpythonパッケージ。python3-virtualenvはvirtualenv何らかの理由でパス上のスクリプトを実行しますが、python-virtualenvは実行し、どちらのバージョンでも正常に動作します。どのバージョンのvirtualenvがインストールされているかは重要ではありません。-p pythonx(xはバージョン)を渡すことにより、インストールされているすべてのバージョンの環境を作成できます。 venvはより単純で、実行元のバージョンの環境のみを作成し、3.3以降でのみ使用できます。$ sudo apt-get install python-virtualenv $ virtualenv -p python3 env $ source ./env/bin/activate $ sudo apt-get install python3-venv $ python3 -m venv env $ source ./env/bin/activate