python - 导入错误 : cannot import name '_gi' from partially initialized module 'gi' (most likely due to a circular import)

标签 python python-3.x ubuntu

当我想切换到 python 3.8 时,看起来我已经破坏了我的 python 安装。使用 Ubuntu 18.04。尝试使用 gi ,给出以下错误:

$ python
Python 3.8.1 (default, Dec 31 2019, 18:42:42) 
[GCC 7.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
 >>> from gi.repository import GLib, Gio
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 partially initialized module 'gi' (most likely due to a circular import) (/usr/lib/python3/dist-packages/gi/__init__.py)

尝试为 python 运行 update-alternatives,但它告诉我只配置了一个 python 替代方案(3.8)。

试图重新安装python3-gi和python3.8。还是同样的问题

最佳答案

安装 gi对于 python 3.8:python3.8 -m pip install pgi然后,而不是 import gi利用:

import pgi
pgi.install_as_gi()
from gi.repository import GLib, Gio

或者,您可以强制为 python 3.8 安装 PyGObject:
sudo python3.8 -m pip install --ignore-installed PyGObject
这应该允许一个 from gi import ...和以前一样。

关于python - 导入错误 : cannot import name '_gi' from partially initialized module 'gi' (most likely due to a circular import),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59838238/

相关文章:

python - IOError: [Errno 2] 没有这样的文件或目录

python - Geopandas - ValueError : Cannot transform naive geometries. 请先在对象上设置 crs

linux - Amazon EC2 私钥丢失,如何访问服务器?

python-3.x - PyTorch 维度超出范围(预计在 [-1, 0] 范围内,但得到 1)

python - 如何使 Dijkstra 算法报告最短路线的完整最终距离

c - 尝试在 C 和 Ubuntu 中使用 FFMPEG

bash - 本地 : -n: invalid option

python - 为什么 LogLocator 每 2 个十年只给我一次刻度?

python - torndb(MySQLdb) 查询参数不起作用

python - 如何从文件中读取 float ?