首页 > 解决方案 > 为什么它不识别模块?(Python 3.7)

问题描述

我试图创建一个包,但我得到了那个错误:

ModuleNotFoundError: No module named 'MyMainPackage'

这是我的文件夹:

我的主包

__ pycache __(文件夹)

子包(文件夹)

__初始化__.py

some_main_script.py

def report_main():
print("Hey I'm in some_main_script in main package.")

子包

__ pycache __(文件夹)

__ 初始化 __.py

我的下标.py

def sub_report():
print("Hey I'm function inside mysubscript")

注意:“MyMainPackage”是我的“Programing”文件夹的子文件夹之一。我称之为“Python Project”的另一个子文件夹,在她里面有那个文件:

from MyMainPackage import some_main_script
from MyMainPackage.SubPackage import mysubscript

some_main_script.report_main()

mysubscript.sub_report()

当我运行文件时,我得到了错误。

Traceback (most recent call last):
File "c:/Users/yoavo/Desktop/Programing/Python Projects/myprogram.py", line 1, in <module>
from MyMainPackage import some_main_script
ModuleNotFoundError: No module named 'MyMainPackage'

标签: pythonmodulepackage

解决方案


尝试将您的 myprogram.py 文件移动到 Programming 文件夹的根目录,这样您就有了这样的结构。Python 从当前脚本的根文件夹中查找模块。

Programming
|
|__myprogram.py
|
|__MyMainPackage

推荐阅读