如何在 Python 中使用 virtualenv?

新手上路,请多包涵

我计划为 Python 安装一个虚拟环境,以便将我的 Python 包分开。这样做的动机之一也是在我的机器 (Ubuntu 14.04) 上同时存在两个版本的 Python。我有以下奇迹:

  1. Python、PIP 和 virtualenv 应该按什么顺序安装?这有关系吗?
  2. 完成后,如何在 virtualenv 下将两个 python 版本分开?
  3. 假设我正在处理不同的项目,是否建议将每个项目保存在由 virtualenv 创建的单独文件夹中?

我想知道专家的意见,以便以正确的方式和明智地做事。

原文由 Yas 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 357
2 个回答

使用 virtualenv 在 Python 程序员中很常见。这些链接将比我的答案更有用:

  • http://docs.python-guide.org/en/latest/dev/virtualenvs/

  • http://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/

    1. 是的,这很重要。 Pip 使用 Python,但由于 Ubuntu 预装了一个 Python 版本(在您的情况下同时安装了 2 和 3),因此您不必担心这一点。但顺序是 Python -> PIP -> virtualenv。

    2. 一旦你 cd 在一个新的空项目文件夹中,你可以使用你选择的 Python 版本创建 virtualenv virtualenv -p /path/to/python/version venv 。您可以使用 which python2which python3 找到路径。

    3. 如果我正确理解你的问题 - 是的。 virtualenv 的重点是将每个项目保存在一个单独的文件夹中,并设置自己的 virtualenv。即使是一个小项目,你也会更加熟悉 virtualenv 的概念(甚至可能是像 Docker 这样的容器)。

原文由 HoppyKamper 发布,翻译遵循 CC BY-SA 3.0 许可协议

  1. 您按该顺序安装它,请参阅下面的说明(尽管有其他选择)。您可以在 pip 之前使用 APT 安装 virtualenv,但是由于安装了 pip,所以不需要。
  2. 我现在真的不知道,但我发现了另一个可能对您有帮助的线程: How to use pip3 with python 3.4?
  3. 强烈推荐,依赖关系可能不一样,它会帮助你保持干净(例如关于版本控制)

现在,如何安装 Python 对于 Ubuntu 14.04,您将安装 python2.7 和 python3,默认情况下“python”是 python2.7 的别名。

Pip 你可以安装:

 sudo apt-get install python-pip python3-pip

我不知道 py2 的 pip 和 py3 的 pip 如何共存,但它们可以作为单独的包使用。

VirtualEnv 您可以使用 pip 安装 virtualenv:

 pip install virtualenv

这里我使用 python2 的 pip


完成所有设置后,我将执行以下操作:

 mkdir -p project_name/source
cd project_name
virtualenv env

我通常在每个项目中保持 和环境名称不变,因为我有一些钩子,但我建议你替换名称,特别是“ env ”,因为它是了解你在哪个 VirtualEnv 中工作的关键,因为你会得到这样的东西:

 (env)yser@machine:/home/user/cool_projects/project_name$

我还将 env 保留在 源代码 之外,以通过版本控制简化事情(无需将其标记为忽略),但这只是我。

激活虚拟环境:

 cd project_name
source env/bin/activate

现在你可以在 VirtualEnv 中进行 _pip 安装_。要更改项目,请使用以下命令退出当前的 VirtualEnv:

 deactivate

希望能帮助到你!

原文由 hectorcanto 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题