gnome-terminal 出错 ImportError: cannot import name '_gi'
系统:ubuntu17
装了python2.7.13, 之后陆续装了python3.5.3, python3.6.1
本来默认的python版本是2.7, 改为3.6后, 就出现gnome-terminal用不了的问题:
$ gnome-terminal
Traceback (most recent call last):
File "/usr/bin/gnome-terminal", line 9, in <module>
from gi.repository import GLib, Gio
File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
from . import _gi
ImportError: cannot import name '_gi'
$ ls /usr/lib/python3/dist-packages/gi/
_constants.py _gobject overrides _signalhelper.py
docstring.py importer.py _propertyhelper.py types.py
_error.py __init__.py __pycache__
_gi_cairo.cpython-35m-x86_64-linux-gnu.so module.py pygtkcompat.py
_gi.cpython-35m-x86_64-linux-gnu.so _option.py repository
$ sudo cp _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-36m-x86_64-linux-gnu.so
$ sudo cp _gi_cairo.cpython-35m-x86_64-linux-gnu.so _gi_cairo.cpython-36m-x86_64-linux-gnu.so
OK, 问题解决
(1)当终端不能用的时候我们又要命令行怎么办?
解决办法:按Ctrl+Alt+F1,这样就可以从图形界面切换到命令行模式。
(2)当你按照我上面提到的文章中的
$ sudo cp _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-36m-x86_64-linux-gnu.so
这一句的时候会出现错误提示
_gi.cpython-35m-x86_64-linux-gnu.so
没有这个文件,但是你用ls命令确实可以看到这个文件,这是为什么呢?
其实是你复制的地方不对,你是在主目录下复制的,主目录下当然没有这个文件了。你应该先跳到要复制的文件所在的文件夹中才可以。命令如下:
cd /usr/lib/python3/dist-packages/gi/
你先跳到这个文件夹下后再执行这两句命令就可以了
$ sudo cp _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-36m-x86_64-linux-gnu.so
$ sudo cp _gi_cairo.cpython-35m-x86_64-linux-gnu.so _gi_cairo.cpython-36m-x86_64-linux-gnu.so
(3)系统怎么从命令模式切换到图形界面?
按Ctrl+Alt+F7,就可以了。
---------------------
作者:Threeyearsago
来源:CSDN
原文:https://blog.csdn.net/Threeyearsago/article/details/80276579
版权声明:本文为博主原创文章,转载请附上博文链接!