我是使用virtualenv进行python开发的新手。我在Windows中安装了python 2.7,pip,virtualenv,virtualenvwrapper,我使用的是Windows PS。我已经提到了很多教程来设置它。他们中的大多数都包含相同的步骤,几乎所有这些步骤都没有解释在创建virtualenv之后做什么。
我如何在virtualenv中实际工作?假设我想在我的新env virtualenv(例如; testenv)中安装该软件包之后创建一个新的烧瓶应用程序。
如果我已经有一个现有的项目,并且我想把它放在一个新创建的虚拟环境中,我该怎么做?文件夹结构应该如何?
我对虚拟环境的理解是,它为您的应用程序提供了一个沙箱,通过隔离它并在该特定环境中保留其所有依赖关系(而不是与其他环境共享)。我明白了吗?
请帮我澄清一下。
答案 0 :(得分:1)
我如何在virtualenv中实际工作?假设我想在我的新env virtualenv中安装该软件包之后创建一个新的烧瓶应用程序(例如; testenv)。
您打开命令提示符并激活virtualenv:
> \path\to\env\Scripts\activate
当您运行python
和pip
时,它们会在virtualenv中运行。您必须为每个命令提示符窗口执行此操作,因为在virtualenv中工作实际上只是运行C:\path\to\env\bin\python
而不是python
和C:\path\to\env\bin\pip
而不是pip
。
如果我已经有一个现有的项目,并且我想把它放在一个新创建的虚拟环境中,我该怎么做?文件夹结构应该如何?
没关系。安装Python软件包时,它们会全局安装到C:\Python27\site-packages
。使用virtualenv,您可以创建具有自己的包的独立Python环境,因此如果您正在处理需要不同版本的包的两个项目,它们可以共存而不会出现任何问题。
有些人为他们的virtualenvs创建一个文件夹(如C:\Users\you\Virtualenvs\my_website
)。您也可以将其与项目一起存储(如C:\Users\you\Projects\my_website\venv
)。激活后,位置无关紧要。我使用后者。
我对虚拟环境的理解是,它为您的应用程序提供了一个沙箱,通过隔离它并在特定环境中保留其所有依赖关系(而不是与其他环境共享)。我明白了吗?
不。我要澄清的唯一一点是"沙盒"仅适用于Python的软件包,它不会以任何方式影响您的应用程序。
答案 1 :(得分:0)