Python 我是使用“pyvenv”还是“virtualenv”来创建虚拟环境?

Python 我是使用“pyvenv”还是“virtualenv”来创建虚拟环境?,python,virtualenv,virtual-environment,Python,Virtualenv,Virtual Environment,一些指南在谈到虚拟环境时提到了pyvenv(不是pyenv)。其他人提到了虚拟化,比如在。我试过pyvenv,我认为它的工作原理如您所见: 以下是ve目录的内容: 那么,pyvenv可以用来创建虚拟环境吗?virtualenv是否与pyvenv相同?哪一个应该用得更好?它们非常相似。主要区别在于,virtualenv已经存在很长时间了,可以在大多数设置中使用 另一方面,pyvenv是为Python3设计的,并且从版本3.4开始随附标准库 换句话说,virtualenv是经典选择,而pyven

一些指南在谈到虚拟环境时提到了
pyvenv
不是
pyenv
)。其他人提到了虚拟化,比如在。我试过
pyvenv
,我认为它的工作原理如您所见:

以下是
ve
目录的内容:


那么,
pyvenv
可以用来创建虚拟环境吗?
virtualenv
是否与
pyvenv
相同?哪一个应该用得更好?

它们非常相似。主要区别在于,
virtualenv
已经存在很长时间了,可以在大多数设置中使用

另一方面,
pyvenv
是为Python3设计的,并且从版本
3.4
开始随附标准库


换句话说,
virtualenv
是经典选择,而
pyvenv
是标准库的最新添加。我认为
pyvenv
最终将取代
virtualenv
(只要python3取代python2:P)

pyvenv
基本上是一个包装器,它是自python3.3以来标准库的一部分,并且是此后创建虚拟环境的推荐方式。实际上,
pyvenv
wrapper并不推荐使用。在Python > = 3.3考虑直接使用<代码> VEV< <代码>模块,如在链接的文档中所描述的。较旧的Python版本应该使用
virtualenv
来创建虚拟环境。

使用一种工具,以类似于
npm
的方式将
pip
virtualenv
统一起来。您可以使用它来安装和管理您的virtualenvs和您的依赖项。

如何创建虚拟环境取决于您使用的是Python 3还是Python 2

  • 是一种用于创建隔离Python环境的工具。它可以与Python2和Python3一起使用

  • pyvenv
    是在python3.3中引入的,它是从python3.6开始支持使用
    python3-m-venv
    ,并计划在python3.8中消失

作为实际建议,根据您的Python版本,使用以下方法创建名为
venv
的虚拟环境:

$ virtualenv venv # in Python 2 
$ python3 -m venv venv # Python 3

无论您使用哪种Python版本,都将创建一个包含虚拟环境文件的文件夹
venv

几乎正确
pyvenv
不是标准库的一部分,
venv
是从Python 3.3开始的,正如官方文档所说。下面是指向
venv
文档的链接,以供记录: