如何使终端运行python 3.1?


14

当前,当我在终端上键入“ python”时,我得到了v2.6,这一切都很好,但我如何设置它以使用v3.1?我可以像Windows一样更改某个地方的“路径”变量吗?

编辑:我已经安装了python3,并且正在运行。我只想知道如何将其设置为shells默认的python版本。


python3 vs python从命令行。
EarthmeLon 2012年

Answers:


18

使用python-virtualenv 创建虚拟python环境。

选择要在虚拟环境中创建的Python版本:

virtualenv --python=/usr/bin/python3.1 myvirtualenv

要管理多个虚拟Python环境,请安装virtualenvwrapper扩展。

为什么选择virtualenv?

解决的基本问题是依赖项和版本之一,以及间接权限。假设您有一个需要使用LibFoo的版本1的应用程序,但是另一个应用程序需要的版本2。您如何同时使用这两个应用程序?如果将所有内容都安装到/usr/lib/python2.4/site-packages(或平台的标准位置是什么)中,那么很容易在无意中升级不应升级的应用程序的情况下结束。


如果我的应用程序公开了,我一定会用这个谢谢你。
约翰

10

首先,您需要安装该python3软件包。安装后,转到终端并输入:

sudo update-alternatives --config python

然后从显示的列表中选择python3。

如果不起作用,则可能需要重新创建符号链接。首先保存:

sudo mv /usr/bin/python /usr/bin/pythonSAVE

之后,创建替代方案:

sudo update-alternatives --install python2.5 python /usr/bin/python2.5 2
sudo update-alternatives --install python3.1 python /usr/bin/python3.1 1

创建一个新的符号链接:

sudo ln -s /etc/alternatives/python /usr/bin/python

最后,选择您要使用的一个(python3):

sudo update-alternatives --config python

如果您需要返回到python2,只需重复以下命令:

sudo update-alternatives --config python

我想只是安装该软件包,更新替代方案就可以很好地工作,您可能不需要从头开始重新创建链接。谢谢!

编辑:正如指出这里update-alternatives--install选择接受一个绝对链接,所以你可能需要运行:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.5 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.1 1

我试过运行sudo update-alternatives --config python,但它告诉我update-alternatives: error: no alternatives for python.我尝试按照您所说的重新创建符号链接,但是并没有改变任何东西...可能是什么问题?
肖恩·伯恩

1

首先使用Dead Snakes仓库安装Python 3.1:https : //launchpad.net/~fkrull/+archive/deadsnakes

然后,您可以在命令行中键入“ python3”以运行Python 3.1,同时保留正常的系统Python。


+1-似乎毫无意义,因为python3.1-minimal它位于Ubuntu信息库中,但实际上该信息库包含python2.4python2.5-相当不错。(我必须使用python 2.4进行高性能计算,才知道痛苦...)
Stefano Palazzo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.