将 python3.4 设置为默认值后,Dropbox 和 Ubuntu 软件中心不起作用

将 python3.4 设置为默认值后,Dropbox 和 Ubuntu 软件中心不起作用

在 Ubuntu 14.04 中,我将其设置python3.4为默认python版本。此后,Dropbox 不会在启动时启动,Ubuntu 软件中心也无法再打开。从命令行运行它们,我有:

petrux@MYMACHINE:~$ dropbox 
  File "/usr/bin/dropbox", line 232
    except OSError, e:
                  ^
SyntaxError: invalid syntax

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

我怎样才能解决这个问题?

编辑:我刚刚注意到,此外,不再有音频输出。

答案1

如果这是您遇到的问题。

File "/usr/bin/dropbox", line 215
    except OSError, e:
                  ^
SyntaxError: invalid syntax

这可能是由于您将 python 从 python2 更新到 python3 并将 python3 设置为默认 python。要解决这个问题,您可以按照以下步骤操作。

按照以下步骤操作,

  1. 打开cd /usr/bin/dropbox文件并处于编辑模式。
  2. 将第一行从 更改#!/usr/bin/python#!/usr/bin/python2
  3. 重新启动 Dropbox 应用程序,它应该可以正常运行。

答案2

通用命令python和 shebang#!/usr/bin/python当前映射到 Python 2。请勿自行更改该映射 - 它将破坏 14.04 中仍然使用 Python 2 的许多基本系统应用程序和服务,并且还不能与 Python 3 一起使用。

撤消将 Python 3.4 设置为默认 Python 版本的所有操作。

14.04 包含 Python 2 和 Python 3。您系统上的应用程序和服务可能依赖于其中之一。

要启动 Python 3 解释器,请使用命令或在脚本中python3放置 shebang 。#!/usr/bin/python3

要启动 Python 2 解释器,请使用命令pythonpython2,或者将 shebang#!/usr/bin/python或放入#!/usr/bin/python2脚本中。

答案3

对我来说,我使用以下命令将默认 python 设置为 3 sudo update-alternatives --config python

将其改回 python 2 即可解决问题

答案4

如果你尚未update-alternatives配置,一个好的做法是列出所有 python 安装,以便在它们之间快速切换

ls /usr/bin/python*首先使用以下命令添加所有已安装的 python 版本(可以看到正在执行):

sudo update-alternatives --install /usr/bin/python python <path-to-python-version> <priority>

示例(为了解决 Dropbox 的这个问题,请将 python 2.7 添加到替代方案中)

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 3

执行sudo update-alternatives --config python列出所有添加的替代方案并选择 python 版本并输入相应的选择值。

相关内容