CristophGohlkeのpython packages )を調べていたところ、Python 3.3のパッケージVirtualenvがあることに気づきました。
標準のpythonライブラリv3.3にはパッケージvenvがあるので、利点があるかどうか疑問に思いましたこのパッケージを個別にインストールします。
編集:両方のパッケージのドキュメントから、 virtualenv 1.8.2 およびvenv私はvenv標準ライブラリパッケージには、次の機能がありません。
--no-site-packages
オプション--Prompt=PROMPT
他に見つけられなかった違いがあれば、ここに書いてください。
通常、virtualenvパッケージは、python3.3以降を使用する場合は必要ありません。これは、 PEP 405 を介して標準ライブラリに組み込まれているためです。質問でお気づきのように、virtualenvの最新バージョンと標準ライブラリのvenvパッケージの間には比較的小さな違いがいくつかあります。一部(例:--no-site-packages
)、これはさまざまな実装に起因します。 venv
は標準ライブラリにあるため、自己完結型のpythonインストールを作成するために、virtualenv
が行う曲がったフープの一部をジャンプする必要はありません。 Pythonのsite
モジュールの多くをコピーするように。
最良のリソースは、実際にはPEPを完全に読むことです。
質問のために
--no-site-packages
は両方のデフォルトです。 --system-site-packages
オプションは存在しますが、 壊れていますpython3-venv
パッケージをインストールしてくださいVenvが最初に発表されたとき、「古いpythonのvirtualenv」のバグ修正を提供するためにメンテナンスモードになり、すべての開発がstdlibvenvに焦点を移すことを望んでいました。 virtualenvのプロジェクトの目標/ロードマップについてはよくわかりませんが、私が望んでいたことが実現していないのではないかと心配しています。したがって、少なくとも当面は、元のvirtualenvを使用し続けます。
pyvenvは、Python 3.3および3.4の仮想環境を作成するための推奨ツールでした
python 3.5以降の使用:
python3 -m venv
venvは、Pythonの内部にアクセスできる組み込みモジュールです
pyvenvは3.6で非推奨になりました