[英]Python - Module Not Found Error
我有这个结构:
F
f1
__init__.py
f.py
g.py
f2
__init__.py
h.py
f2.__init__.py
:
from f1 import f, g
f2.h.py
:
from f2 import f, g
f2.py是__main__
文件。 当我运行f2时,出现错误
ModuleNotFoundError: No module named 'f2'
我该如何解决?
如果直接在f2.h.py
中运行main,则解释器似乎不是F
的父路径。
一种选择是使用相对导入,这对于Python 2/3是不同的 。 例如,添加F.__init__.py
文件,然后chnage F.f2.__init__.py
到from ..f1 import f, g
中和finaly F.f2.h.py
进口如from F.f2 import f, g
。
另一个选择是将路径添加到父目标:
import os, sys
sys.path += [os.path.abspath('..')]
from f2 import f, g
if __name__ == '__main__':
print('hello')
我修理它。 正如Jirka B.所说,问题是我从解释器运行了directley代码。 在完成应做的事情之后,一切都按我的意愿进行。 谢谢你们
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.