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
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!