区分 venv、pyvenv、pyenv、virtualenv、virtualenvwrapper、pipenv 等
随着 Python 3.3 中 venv 的引入,景观Python环境管理工具变得更加复杂。让我们深入研究一下与模式 (py)?(v|virtual|pip)?env 匹配的各种包之间的差异。
标准库之外的 PyPI 包
-
virtualenv: 用于为库创建隔离的 Python 环境的流行工具。它修改 PATH 环境变量以包含自定义 bin 目录,其中包含 Python 二进制文件的精确副本。
-
pyenv: 管理多个 Python 版本,允许开发人员针对不同的 Python 版本测试代码。它利用特殊脚本根据环境变量或配置文件动态确定要使用的 Python 版本。
-
pyenv-virtualenv: 一个将 pyenv 与 virtualenv 集成的插件,可以同时使用两者同时使用工具。但是,对于 Python 3.3 及更高版本,它将 venv 创建委托给 python -m venv。
-
virtualenvwrapper: virtualenv 的一组扩展,提供用于创建、列出和切换的便捷命令虚拟环境。
-
pyenv-virtualenvwrapper: A将 virtualenvwrapper 无缝集成到 pyenv 中的插件。
-
pipenv: 将 Pipfile、pip 和 virtualenv 组合到单个命令行工具中的工具。它使用项目目录的哈希来定位虚拟环境。
标准库
-
pyvenv:遗留Python 3.3-3.7 附带的脚本。运行 python3 -m venv 产生相同的结果。
-
venv: Python 3 中包含的包,可通过 python3 -m venv 访问。与 virtualenv 类似,但功能较少。由于支持 Python 2 和 3,virtualenv 仍然得到更广泛的使用。
以上是venv、pyvenv、virtualenv、virtualenvwrapper、pyenv、pipenv 等有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!