Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用virtualenv和pip的工作流_Python_Django_Virtualenv - Fatal编程技术网

Python 使用virtualenv和pip的工作流

Python 使用virtualenv和pip的工作流,python,django,virtualenv,Python,Django,Virtualenv,我的系统(Ubuntu10.x)上已经安装了python2.6和django1.2.3 这是我在大多数项目中使用的设置。但对于一些项目,我需要沙盒环境、不同的django版本、一些额外的python模块,有时甚至需要不同的python版本 所以,我现在尝试使用pip和virtualenv,但无法更改python和django版本。我必须删除默认设置并将所有现有项目移动到1个virtualenv中。我能避免这个吗?即使我这样做了,我如何指定不同版本的python 如果我必须删除旧设置。我该怎么做?

我的系统(Ubuntu10.x)上已经安装了python2.6和django1.2.3 这是我在大多数项目中使用的设置。但对于一些项目,我需要沙盒环境、不同的django版本、一些额外的python模块,有时甚至需要不同的python版本

所以,我现在尝试使用pip和virtualenv,但无法更改python和django版本。我必须删除默认设置并将所有现有项目移动到1个virtualenv中。我能避免这个吗?即使我这样做了,我如何指定不同版本的python

如果我必须删除旧设置。我该怎么做?我目前已经在
/usr/local/lib/python2.6/dist软件包中安装了大部分东西,但我不确定是否还有其他地方安装了任何东西

如果我有一个完全空白的Ubuntu设置,理想的工作流程是什么?是这个吗

Install python
$ sudo apt-get install python-setuptools 
$ sudo apt-get install python-virtualenv 
$ sudo easy_install pip
$ sudo pip install virtualenvwrapper 
您要执行以下操作:

virtualenv --python=/path/to/python/version --no-site-packages ENV_NAME
例如:

virtualenv --python=/usr/bin/python2.6 --no-site-packages my_project_env

如果您在项目中遵循这一点,您应该能够为每个项目进行单独的配置。

您可以使用
virtualenv--no site packages ENVNAME
,这将确保系统Python中的默认Django不会包含在新环境中


对于不同版本的Python,您可以。

我已经从源代码安装了我需要的所有Python verison(2.4、2.5、2.6、2.7、3.1和3.2)。这始终是最好的做法,因此不会弄乱系统

我在/opt中安装了它们。就像这样(首先,你也需要一堆Ubuntu软件包):

然后我为每个版本安装我需要的东西。我从安装Distribute开始:

wget http://nightly.ziade.org/distribute_setup.py
/opt/pythonxx/bin/python distribute_setup.py
(除了Python 3,谁需要distribute_setup3.py) 然后我可以安装pip

/opt/pythonxx/bin/easy_install pip
和virtualenv:

/opt/pythonxx/bin/pip install virtualenv
(适用于Python 3的Virtualenv3或virtualenv5)

就这样!如果我想使用Python 2.4制作virtualenv,我会:

/opt/python24/bin/virtualenv foobar
和Python 2.7:

/opt/python27/bin/virtualenv foobar
运行python只是一个简单的过程

/opt/python24/bin/python

除这些模块和PIL(因为PIL是一种痛苦,但现在有了枕头,所以你也不必这么做)。我使用zc.buildout和virtualenv来保持python的干净。

我提出了一个问题,列出了所有需要的软件包,因为每次安装新的Ubuntu时,我都会花半个小时在上面。:)virtualenv将拯救你的生命-很好的呼叫。
——现在没有网站包被弃用;这是现在的默认行为。如果要启用对站点软件包的访问,则必须在调用
virtualenv
期间传递
--system site packages
explicit。
/opt/python24/bin/python