如何在Python中使用virtualenv?

时间:2016-01-26 15:13:19

标签: python virtualenv

我打算为Python安装一个虚拟环境,以便将我的Python包分开。其中一个动机也是我的机器上有两个版本的Python(Ubuntu 14.04)共存。我有以下奇迹:

  1. 应该以什么顺序安装Python,PIP和virtualenv?这有什么关系吗?
  2. 完成后,如何在virtualenv下保留两个python版本?
  3. 假设我正在处理不同的项目,是否建议将每个项目保存在virtualenv创建的单独文件夹中?
  4. 我想知道专家的意见,以便以正确的方式和明智地做事。

5 个答案:

答案 0 :(得分:6)

  1. 按顺序安装,请参阅下面的说明(尽管有替代方案)。您可以在pip之前使用APT安装virtualenv,但是因为你安装了pip,所以你不需要。
  2. 我现在不是,但我找到了另一个可以帮到你的帖子:How to use pip3 with python 3.4?
  3. 强烈建议,依赖关系可能不一样,它会帮助您保持清洁(例如关于版本控制)
  4. 现在,如何安装 的的Python 对于Ubuntu 14.04,你已经安装了python2.7和python3,默认情况下“python”是python2.7的别名。

    Pip 您可以安装:

    sudo apt-get install python-pip python3-pip
    

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

    <强> VIRTUALENV 您可以使用pip来安装virtualenv:

    pip install virtualenv
    

    这里我使用pip for python2

    一旦完成所有设置,我会执行以下操作:

    mkdir -p project_name/source
    cd project_name
    virtualenv env
    

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

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

    我还将 env 保留在 source 之外,以简化版本控制(不需要将其标记为忽略),但这只是我。

    激活virtualenv:

    cd project_name
    source env/bin/activate
    

    现在您可以在VirtualEnv中 pip install 。 要更改项目,请退出当前的VirtualEnv:

    deactivate
    

    希望它有所帮助!

答案 1 :(得分:4)

使用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 - &gt; PIP - &gt;的virtualenv。

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

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

答案 2 :(得分:2)

我建议使用pyenv。它位于virtualenv的顶部,提供了一种简单的方法来安装不同的Pythons(cpython,jpython,anaconda,...),每个都有自己的virtualenvs。您的系统的Python可以使用别名system

答案 3 :(得分:2)

是的,最好为每个python项目使用它的virtualenv

1-在venv文件夹中创建python virtualenv:

>>> cd [your project path]
>>> virtualenv venv

2-您可以通过以下方式激活您的环境:

>>> source ./venv/bin/active

3-使用pip安装您的需求包:

>>> pip install -r <your requirements file>
>>> or pip install <python module>

您也可以在不激活环境的情况下安装需求模块

>>> ./venv/bin/pip install <python module>

4-运行你的python脚本使用:

>>> python <.py file>

如果你没有激活你的环境使用:

 >>> ./venv/bin/python <.py file>

如果你想管理你的python,你有virtual wrapper

答案 4 :(得分:1)

  

应该以什么顺序安装Python,PIP和virtualenv?可以   完全没问题?

1. Install python
2. Install pip
3. Install virtualenv (with `pip install virtualenv`)
4. Create new virtualenv
  

如何在virtualenv下保留两个python版本?

使用命令:

为不同的python版本创建单独的python环境
    virtualenv -p /usr/bin/python2.7 <path/to/new/virtualenv/>
  

假设我正在处理单独的项目,建议保留   每个项目都在virtualenv创建的单独文件夹中吗?

不推荐。但是,您可以将这些项目保留在一个virtualenv下,直到为您的项目安装的python包版本之间没有冲突

阅读Virtual Environment中的The Hitchhiker’s Guide to Python!段,它会回答你的很多问题!

另外,您可以查看How do I install python 2.7.2 on Ubuntu?How to Install Pip on Ubuntu,了解如何安装...