开关版本的python

故事:
其中一个应用程序,我的工作在python 2.4和其他在2.6。我试图做一个python2.4的sym链接到python,事情开始在ubuntu jaunty上松动。
现在我正在下载2.4的每个依赖项,并使用python2.4 setup.py install进行安装。这些依赖似乎是无止境的。

问题1:我将如何告诉任何框架,使用版本,所以pf python像Day django使用2.6,并说mjango使用2.4?像我们说的那样使用数据库数据库名称一种语法。

问题2:是否有更优雅的方式在版本之间切换,因为我的符号链接是一场虚拟灾难?

问题3:我可以下载一个说强硬的deb,让jaunty相信它吗?

使用Virtualenv

这里有更多的信息:Working with virtualenv

使用virtualenv,您可以创建一个新的虚拟python环境,每个项目或应用程序都需要任何Python版本。然后,您可以在需要时激活适当的环境。

扩大我的答案:

您可以在计算机上安装多个版本的Python(我的机器上有2.4,2.5,2.6和3.1),我每个从源安装)。我使用Mac,并保持我的系统Python,因为任何OS X设置为默认值。

我使用easy_install来安装软件包。在ubuntu你可以得到easy_install像这样:

sudo apt-get install python-setuptools

要安装virtualenv然后执行:

easy_install virtualenv

我倾向于为我正在处理的每个项目创建一个新的virtualenv,并且不允许访问全局站点包。这将所有的包裹紧紧地保持在一起,并允许我拥有我需要的一切特定版本。

virtualenv -p python2.6 --no-site-packages ~/env/NEW_DJANGO_PROJECT

然后每当我做任何与这个项目相关的事情,我激活它:

source ~/env/NEW_DJANGO_PROJECT/bin/activate

如果我现在运行python它使用这个新的python。如果我使用easy_install,它会将事情安装到我的新虚拟环境中。

所以,virtualenv应该能够解决你的所有问题。

翻译自:https://stackoverflow.com/questions/1108974/switch-versions-of-python

转载注明原文:开关版本的python