我是使用 `pyvenv` 还是 `virtualenv` 来创建虚拟环境?
Do I use `pyvenv` or `virtualenv` for creating a virtual environment?
一些指南在谈论诸如 the official Python tutorial. Others mention virtualenv
such as in the Hitchhiker's Guide to Python。我试过 pyvenv
,我认为它的效果如您所见:
这些是 ve
目录的内容:
那么pyvenv
可以用来创建虚拟环境吗? virtualenv
与 pyvenv
的作用相同吗?应该使用哪一个更好?
他们很像。主要区别在于 virtualenv
已经存在了很长时间,并且可以在大多数设置中使用。
另一方面,pyvenv
是为 Python3 设计的,并且从 3.4
.
版本开始随标准库一起提供
换句话说,virtualenv
是经典选择,而 pyvenv
是最近添加到标准库的。我想 pyvenv
最终会取代 virtualenv
(只要 Python 3 取代 Python 2 :P)
pyvenv
基本上是 venv module 的包装器,它是自 Python 3.3 以来标准库的一部分,并且是从那时起创建虚拟环境的推荐方式。实际上 pyvenv
wrapper 并不那么推荐。在 Python >= 3.3 上考虑直接使用 venv
模块,如链接文档中所述。较旧的 Python 版本应使用 virtualenv
来创建虚拟环境。
如何创建虚拟环境取决于您使用的是 Python 3 还是 2。
virtualenv
是一个创建隔离 Python 环境的工具。它可以与 Python 2 和 3 一起使用。
pyvenv
是在 Python 3.3 中引入的,deprecated 自 Python 3.6 开始支持使用 python3 -m venv
,并且它计划在 Python 3.8.
中消失
作为实用建议,根据您的 Python 版本,使用以下命令创建一个名为 venv
的虚拟环境:
$ virtualenv venv # in Python 2
$ python3 -m venv venv # Python 3
无论您使用哪个 Python 版本,都会创建一个包含虚拟环境文件的文件夹 venv
。
一些指南在谈论诸如 the official Python tutorial. Others mention virtualenv
such as in the Hitchhiker's Guide to Python。我试过 pyvenv
,我认为它的效果如您所见:
这些是 ve
目录的内容:
那么pyvenv
可以用来创建虚拟环境吗? virtualenv
与 pyvenv
的作用相同吗?应该使用哪一个更好?
他们很像。主要区别在于 virtualenv
已经存在了很长时间,并且可以在大多数设置中使用。
pyvenv
是为 Python3 设计的,并且从 3.4
.
换句话说,virtualenv
是经典选择,而 pyvenv
是最近添加到标准库的。我想 pyvenv
最终会取代 virtualenv
(只要 Python 3 取代 Python 2 :P)
pyvenv
基本上是 venv module 的包装器,它是自 Python 3.3 以来标准库的一部分,并且是从那时起创建虚拟环境的推荐方式。实际上 pyvenv
wrapper 并不那么推荐。在 Python >= 3.3 上考虑直接使用 venv
模块,如链接文档中所述。较旧的 Python 版本应使用 virtualenv
来创建虚拟环境。
如何创建虚拟环境取决于您使用的是 Python 3 还是 2。
virtualenv
是一个创建隔离 Python 环境的工具。它可以与 Python 2 和 3 一起使用。pyvenv
是在 Python 3.3 中引入的,deprecated 自 Python 3.6 开始支持使用python3 -m venv
,并且它计划在 Python 3.8. 中消失
作为实用建议,根据您的 Python 版本,使用以下命令创建一个名为 venv
的虚拟环境:
$ virtualenv venv # in Python 2
$ python3 -m venv venv # Python 3
无论您使用哪个 Python 版本,都会创建一个包含虚拟环境文件的文件夹 venv
。