3

我想升级 python 的默认版本,即/usr/bin/python在 Linux 中。

我安装了多个 python 版本

/usr/bin/python2.7   
/usr/bin/python3.3

但是,python命令仍然返回python2.7

# python
Python 2.7 
Type "help", "copyright", "credits" or "license" for more information.
>>>

现在,我安装了一个模块,它安装在默认版本2.7中。

这就是为什么我不能使用python3.3 script.py,因为它返回缺少模块的错误。

如何将此默认版本更新为3.3

有没有办法安装模块/usr/bin/python3.3

补充:模块是pexpect-2.3.

4

2 回答 2

1

安装新python的,默认安装在/usr/local/bin.

在以前的默认 python 路径之前将此路径添加到 PATH 可以解决问题。

export PATH=/usr/local/bin:$PATH
# This export statement could be added to .bashrc for permanent effect.

这样旧的python就不会被弄乱,而是安装了新的。

此外,如果 中已经python存在/usr/local/bin,将符号链接更改/usr/local/bin/python为新的/usr/local/bin/python3.3可以解决问题。(Python安装一般只在安装在/usr/local/bin时才创建链接。你可以ls在/usr/local/bin/python上做来验证它是链接。因为python安装为/usr/local/bin/python2 .7 然后创建一个指向此的链接,如下所示)

/usr/local/bin/python -> /usr/local/bin/python2.7

或者

/usr/local/bin/python -> /usr/local/bin/python3.3

当然,这个路径应该添加到上面已经提到的 PATH 中。

除非有充分的理由,否则最好不要碰和弄乱/usr/bin/python版本,因为 /usr/bin/python 通常不是链接,并且许多 os 模块都需要它。

于 2013-12-05T13:02:02.220 回答
1

虽然接受的答案很好,但是我发现了另一个解决这个问题的技巧,我认为这很简单。

在该位置/usr/bin/有许多可用的 python 相关文件。您可以看到该文件python实际上是一个链接,它指向python2(指向python2.7)。所以每当你命令python时,它都会调用python2.7notpython3.5

解决办法是删除原来的python链接,再做一个指向的链接,python3.5把新的链接文件名改成python.

你完成了。:D

于 2016-08-24T10:49:58.813 回答