gpt4 book ai didi

python - SystemError : Parent module '' not loaded, 无法执行相对导入

转载 作者:IT老高 更新时间:2023-10-28 21:10:41 25 4
gpt4 key购买 nike

我有以下目录:

myProgram
└── app
├── __init__.py
├── main.py
└── mymodule.py

mymodule.py:

class myclass(object):

def __init__(self):
pass

def myfunc(self):
print("Hello!")

main.py:

from .mymodule import myclass

print("Test")
testclass = myclass()
testclass.myfunc()

但是当我运行它时,我得到了这个错误:

Traceback (most recent call last):
File "D:/Users/Myname/Documents/PycharmProjects/myProgram/app/main.py", line 1, in <module>
from .mymodule import myclass
SystemError: Parent module '' not loaded, cannot perform relative import

这行得通:

from mymodule import myclass

但是当我输入这个时我没有自动完成,并且有一条消息:“未解析的引用:mymodule”和“未解析的引用:myclass”。在我正在处理的另一个项目中,我收到错误消息:“ImportError: No module named 'mymodule'.

我能做什么?

最佳答案

我遇到了同样的问题,我通过使用绝对导入而不是相对导入来解决它。

例如,在你的情况下,你可以这样写:

from app.mymodule import myclass

您可以在 documentation 中看到.

Note that relative imports are based on the name of the currentmodule. Since the name of the main module is always "__main__",modules intended for use as the main module of a Python applicationmust always use absolute imports.

编辑:如果遇到此错误 ImportError: No module named 'app.app'; 'app' 不是包,记得在你的app 目录中添加__init__.py 文件,这样解释器就可以将其视为一个包。文件为空就好了。

关于python - SystemError : Parent module '' not loaded, 无法执行相对导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33837717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com