将符号链接“python”更改为“python3”会导致问题

将符号链接“python”更改为“python3”会导致问题

我在 Ubuntu 12.04 64 位上安装了 Python 2.7.3 和 3.2.3(默认?)。当我输入“python”时,我想要的是 python 3.2,而不是 2.7。

将符号链接“python”更改为链接到 python3 似乎会导致大问题。为什么会这样?有办法吗?

lrwxrwxrwx 1 root root       7 Sep 28 19:15 python -> python2
lrwxrwxrwx 1 root root       9 Jun 18 13:26 python2 -> python2.7
-rwxr-xr-x 1 root root 2993592 Apr 10 02:46 python2.7
-rwxr-xr-x 1 root root    1652 Apr 10 02:46 python2.7-config
lrwxrwxrwx 1 root root      16 Jun 18 13:26 python2-config -> python2.7-config
lrwxrwxrwx 1 root root       9 Apr 10 17:12 python3 -> python3.2
lrwxrwxrwx 1 root root      11 Apr 10 02:13 python3.2 -> python3.2mu
-rwxr-xr-x 1 root root 2949952 Apr 10 02:13 python3.2mu
lrwxrwxrwx 1 root root      11 Apr 10 17:12 python3mu -> python3.2mu
lrwxrwxrwx 1 root root      16 Jun 18 13:26 python-config -> python2.7-config

我将python链接到python3:

sudo ln -fs python3 python

它起作用了,但后来它迫使我将链接改回来,因为 Ubuntu 似乎反应不太灵敏,而且我无法再运行大多数应用程序,例如 Variety、Spyder、Okular、Software Center 等。

编辑:
是的,标记重复问题中的 2 个答案升级到 Python 3.3 并设置 Django 时出现问题处理一半我的问题,当我尝试寻找答案时,问题本身似乎与我的问题无关。我怀疑是否有人会意识到答案就在那问题下面。

答案1

如果你想使用 python3 而不是 python2.7手动运行python应用程序,只需添加:

alias python='python3'

到您的~/.bash_aliases文件中。(该文件可能为空,具体取决于您之前是否添加过任何别名。)

除了你手动启动的应用程序之外的其他应用程序将继续像以前一样使用python2.7或python3。

答案2

您的系统上有两个不同版本的 Python,这并不是偶然的或者巧合。

Ubuntu 和基于 Ubuntu 的发行版中的许多应用程序都适用于 Python 2.7。此外,还有一些应用程序适用于 Python 3。

由于 Python 3 不向后兼容,通过符号链接pythonpython3破坏很多依赖关系,因此很多应用程序无法运行。

相关内容