全面的初学者虚拟环境教程?

358 投票
4 回答
150350 浏览
提问于 2025-04-16 16:44

最近我听说了很多关于virtualenv的事情,我对此很感兴趣。但我听到的只是一些赞美之词,并没有清楚地理解它是什么,或者怎么使用。

我希望能找到一个(最好是)跟着做的教程,能带我从没有安装Python的Windows或Linux系统开始,详细解释每一步(顺序不重要):

  • 我应该做些什么才能开始使用virtualenv
  • 使用virtualenv的具体好处是什么
  • 在哪些情况下我可以/不能使用virtualenv
  • 在哪些情况下我应该/不应该使用virtualenv

并且全面讲解几个可以用和应该用的例子。

那么,有哪些好的教程可以涵盖这些内容呢?或者如果你有时间和兴趣,也许可以在这里回答我几个问题。无论是在你的回答中,还是作为链接到相关教程,这些都是我想知道的事情。

4 个回答

8

这里还有一个不错的资源:http://www.saltycrane.com/blog/2009/05/notes-using-pip-and-virtualenv-django/

这个链接介绍了如何在虚拟环境中使用pip和pip需求文件;Scobal推荐的两个教程都很有帮助,但它们主要是围绕easy_install展开的。

需要注意的是,这些教程都没有解释如何在虚拟环境中运行不同版本的Python。如果你想了解这个,可以查看这个StackOverflow的问题:在虚拟环境中使用不同的Python版本

35

Virtualenv 是一个工具,用来创建独立的 Python 环境。

假设你正在同时做两个项目,项目 A 和项目 B。

项目 A 是一个网页项目,团队使用的包有:

  • Python 2.8.x
  • Django 1.6.x

项目 B 也是一个网页项目,但你们团队使用的是:

  • Python 2.7.x
  • Django 1.4.x

你工作的电脑上没有安装任何版本的 Django,那你该怎么办呢?是安装 Django 1.4 还是 Django 1.6 呢?如果你在全局环境中安装了 Django 1.4,那么在项目 A 中使用 Django 1.6 会不会很麻烦呢?

这时候,Virtualenv 就是你的解决方案!你可以为项目 A 创建一个虚拟环境,为项目 B 创建另一个虚拟环境。这样,当你需要在项目 A 中工作时,只需激活项目 A 的虚拟环境,反之亦然。

使用 Virtualenv 的一个更好的建议是安装 virtualenvwrapper,这样可以更轻松地管理你所有的虚拟环境。它是一个用于创建、使用和删除虚拟环境的工具。

撰写回答