安全地用 python3.7 替换 python 3.6

安全地用 python3.7 替换 python 3.6

由于 Python 的一些变化,我在计算机上安装了 Python 3.7.1,但仍安装了 Python 3.6.7。大多数软件包都是pip3 install --user在更新之前安装的。我使用的是 Ubuntu 18.04.2 LTS。

我假设某些模块仅在 3.6 版本中,所以有时我不得不重新运行 pip 并安装一些模块两次。

因此,现在我无法正确管理我的 xfce-Desktop,因为我不断收到错误,我认为这是由于某种版本冲突引起的:

qohelet@linux:~$ xfce4-panel
Traceback (most recent call last):
  File "/usr/share/xfpanel-switch/xfpanel-switch/xfpanel-switch.py", line 29, in <module>
    import gi
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
    from . import _gi
ImportError: cannot import name '_gi' from 'gi' (/usr/lib/python3/dist-packages/gi/__init__.py)

只需在两个版本中导入它,就可以很清楚地看出问题所在:

qohelet@linux:~$ python3.6
Python 3.6.7 (default, Oct 22 2018, 11:32:17) 
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi

到目前为止没有问题。现在 3.7:

qohelet@linux:~$ python3.7
Python 3.7.1 (default, Oct 22 2018, 11:21:55) 
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
    from . import _gi
ImportError: cannot import name '_gi' from 'gi' (/usr/lib/python3/dist-packages/gi/__init__.py)

尝试使用 apt-get 删除 Python 3.6 会导致灾难,因为基本上所有其他依赖 python 的程序(firefox、virtualbox 以及其他 500Mb 的软件)也会被删除。

那么正确进行升级和删除的最佳方法是什么?

相关内容