在不破坏软件中心的情况下更改 Python 版本

在不破坏软件中心的情况下更改 Python 版本

我一直在摆弄我在 Ubuntu 12.04 上的 Python 安装(我在安装 Python 库时遇到了麻烦),有一次我的python命令不起作用。原来是符号链接丢失了(我一定是不小心把它删掉了哈哈),所以我做了一个新的指向 Python 3.2 (最初指向 2.7):

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3.2 /usr/bin/python

问题:软件中心和更新管理器无法正常工作:

~$ software-center
  File "/usr/bin/software-center", line 152
    print time.time()
             ^
SyntaxError: invalid syntax

我猜这是因为我更改了默认的 Python 版本 (2.7->3.2),所以我将其改回了 2.7。现在它们工作正常,但我仍然想更改“默认”的 Python 版本 (即python终端中调用的版本)。

在 Ubuntu 12.04 中可以做到这一点吗?
谢谢!

答案1

您不应该将符号链接更改为python指向 Python 3,因为您已经看到了其后果。我建议您养成使用 调用 Python 3 程序的习惯,因为python3这样以后麻烦最少。

但是如果你坚持使用 在你的终端上调用 Python 3 python,你可以为其创建一个别名。请记住,别名不同于符号链接。编辑~/.bash_aliases文件(如果不存在则创建它)以在其中添加以下内容:

alias python='python3.2'

然后重新启动终端,您就可以通过调用来执行 Python 3。python这不会像更改符号链接那样破坏任何东西。

您甚至可以添加别名alias py3='python3.2',然后调用py3来运行 Python 3。这更简短且更不容易混淆。

答案2

不要这样做:

  • Ubuntu 附带的 Python 程序依赖于/usr/bin/python您的发行版的默认 Python2 版本。如果是其他版本,它们可能会崩溃。
  • PEP-0394建议python命令调用 Python2。如果调用 Python3,大多数 Python 程序都会崩溃。

/usr/bin/python3如果你想使用 Python3,请使用

相关内容