Hello stackoverflow社区再一次。我还有一个问题。
最近,我发现了一个python库,对于我最近的一个名为Ghost.py的项目来说,对我来说非常有用。该库是一个网络库。
我遇到的问题是一个相当奇怪的错误。谷歌没有任何相关性。
from .ghost import Ghost
SystemError: Parent module '' not loaded, cannot perform relative import
正如你所看到的,这是一个相当奇怪的错误。感谢您解决此错误的任何帮助。
答案 0 :(得分:2)
你在幽灵面前有一个额外的.
。我认为你不需要它:
from ghost import Ghost
答案 1 :(得分:2)
为Babby Boss +1,因为他/她的解决方案会起作用但是我很懒,当我遇到问题时我来到这里,我的问题由我卸载Ghost
来解决,我已经像OP那样安装了使用pip而不是安装Ghost.py
请注意,Ghost
和Ghost.py
不一样,如果像我一样,使用pip安装Ghost
会导致错误Ghost.py
如此简单的修复=
pip2 uninstall Ghost
(等待此完成)
pip2 install Ghost.py
答案 2 :(得分:0)
除了编写像from ghost import Ghost
这样的正确代码之外,您可能还想按照下面列出的步骤进行操作。
从https://github.com/jeanphix/Ghost.py/archive/master.zip
下载ghost.py
主文件
将master.zip
的内容解压缩到C:\ghost-master
文件夹
如果仔细观察文件夹结构,则会发现ghost\__init__.py
文件包含以下内容。
from .ghost import Ghost, Error, TimeoutError
from .test import GhostTestCase
ghost\ext\__init__.py
为0 KB
在这种情况下,运行以下命令来构建程序包。
C:\<path_to_Python_folder>\python.exe setup.py build
你看到除了其他行之外,还会出现以下行。
copying ghost\ext\__init__.py -> build\lib\ghost\ext
这意味着将{0}大小的__init__.py
复制为build\lib\ghost\ext\__init__.py
因此,即使使用以下命令安装ghost.py也不会产生任何错误,您也会遇到ImportError: cannot import name Ghost
。
C:\<path_to_Python_folder>\python.exe setup.py install
因此,要解决此问题,请在构建包之前覆盖__init__.py
文件
C:\ghost-master>copy ghost\__init__.py ghost\ext\
现在发出以下命令。
C:\<path_to_Python_folder>\python.exe setup.py build
C:\<path_to_Python_folder>\python.exe setup.py install
现在你不会看到ImportError: cannot import name Ghost
我已经使用Python 2.7.6测试了上述解决方案