【问题标题】:Python can't find PyGObject/gi even though it is installed即使安装了 Python 也找不到 PyGObject/gi
【发布时间】:2016-03-01 22:06:39
【问题描述】:

我在为其设置 Python-Path 时遇到了麻烦,我真的不知道该怎么做。我用的是elementary OS,应该和Ubuntu差不多。

到目前为止我的代码是这样的:

#!/usr/bin/python3
import gi
gi.require_version('GTK', '3.0')

当我运行脚本时,系统报告没有名为“gi”的模块。 但是,当我尝试

sudo apt-get python3-gi

我被告知它已经安装了。 我试过了

print(sys.path)

locate python3-gi

这给了我一些目录。但是太多了,所以我不知道如果这是正确的方法,应该复制到哪里。

附录:

好的,这样做type export PATH="$PATH:/usr/local/bin/python-gi3" 会产生export is a shell builtin bash: type: PATH=/home/ge0rg/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/bin/python3-gi: not found

uname -r 产生3.19.0-51-generic

同时,我也尝试重新安装python3-gi,但无济于事。此外,由于 python3-gi 似乎位于/usr/lib/python3/dist-pacakges,因此我尝试进入 python 并执行sys.path.append("/usr/lib/python3/dist-pacakges"),其中之前不包含上述文件夹。但是,在这样做之后import gi 给出了与以前相同的错误:>>> import gi Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named 'gi'

编辑:另外,locate python3-gi 产生:

`/usr/share/doc/python3-gi
/usr/share/doc/python3-gi-cairo
/usr/share/doc/python3-gi/changelog.Debian.gz
/usr/share/doc/python3-gi/copyright
/usr/share/doc/python3-gi-cairo/changelog.Debian.gz
/usr/share/doc/python3-gi-cairo/copyright
/usr/share/lintian/overrides/python3-gi
/var/lib/dpkg/info/python3-gi-cairo.list
/var/lib/dpkg/info/python3-gi-cairo.md5sums
/var/lib/dpkg/info/python3-gi-cairo.postinst
/var/lib/dpkg/info/python3-gi-cairo.postrm
/var/lib/dpkg/info/python3-gi-cairo.shlibs
/var/lib/dpkg/info/python3-gi.list
/var/lib/dpkg/info/python3-gi.md5sums
/var/lib/dpkg/info/python3-gi.postinst
/var/lib/dpkg/info/python3-gi.postrm
/var/lib/dpkg/info/python3-gi.prerm
/var/lib/dpkg/info/python3-gi.shlibs`

不过,/usr/lib/dist-packages/gi 也存在,但 locate gi 只是返回一整套大部分不相关的结果。

【问题讨论】:

    标签: python path gtk pygobject


    【解决方案1】:

    我猜它安装在 /usr/local/bin/python-gi3 中。如果你在那里看到它,打开你的 shell 并输入 type export PATH="$PATH:/usr/local/bin/python-gi3" 来设置路径

    【讨论】:

    • 它不存在,但我在/usr/share/doc/python3-gi 中找到了它(我认为)。但是,如果我将您的表达式更改为type export PATH="$PATH:/usr/local/bin/python3-gi",我会得到一些路径列表并且:未找到。我很困惑...
    • 另外,运行 cd / 然后找到 . -name python-gi3
    • 啊好吧,这很有趣。如果我去找。 -name python3-gi(不是python-gi3,希望是你的意思,其他的不存在),我得到./home/ge0rg/anacona3/lib/python3.5/python3-gi././usr/share/lintian/overrides/python3-gi./usr/share/doc/python3-gi
    • 但我相信 anaconda 文件夹就是我之前将其复制到的位置,但没有成功。如果我尝试 type export PATH="$PATH:/usr/local/bin/python-gi3" 时出现错误消息,即使我将文件夹更改为 /home/anaconda3... 或 /usr/share...,我也会收到相同的错误:export is a bash bulitin. bash: type: PATH=[some listings of my paths, They don't fit in this comment...]. last line:/home/ge0rg/anaconda3/lib/python3.5/python-gi3: not found
    • 我还没有解决问题。我对 Linux 很陌生,而且我不习惯这些东西,所以非常感谢一些帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-26
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 2021-02-13
    • 1970-01-01
    • 2021-04-16
    相关资源
    最近更新 更多