Python 3仮想環境を作成する


13

python3-virtualenv公式のUbuntuパッケージを使用してLubuntu 15.1 にインストールしましたapt-get install python3-virtualenv公式ドキュメントは、単純なことを示しているvirtualenv .私のプロジェクトのディレクトリにはvenvを作成するのに十分でなければなりません。何もしないので、これは何もwhich virtualenvしません。(から何もないwhich python-virtualenvwhich 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ディレクトリにpython3が含まれている場合に機能するようです。

Python 3 virtualenvを正常に作成するにはどうすればよいですか?


Debianでこの動作を変更するパッチ。salsa.debian.org/python-team/modules/python-virtualenv/blob/…このパッチが追加されたときに使用された思考プロセスを理解してほしい。
ウィニー

回答:


24

venvは、仮想環境を作成するための便利なスクリプトですが、virtualenv実行可能なすべてを完全に置き換えるものではありません。ただし、ほとんどの場合、どちらを使用しても問題ありません。 virtualenv時代遅れではありません。

python3 -m venvpython3-venvDebianはベースPythonパッケージからいくつかのスクリプトを削除するため、インストール後に機能します。 何らかの理由でスクリプトをパスにpython3-virtualenv配置しませんが、どちらのバージョンでも問題virtualenvなくpython-virtualenv機能します。

どのバージョンvirtualenvがインストールされているかは重要ではありません-p pythonX。(Xはバージョンです)を渡すことにより、インストールされたバージョンのenvを生成できます。 venvよりシンプルで、実行元のバージョンのenvのみを作成し、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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.