Python导入报错:'modules'不是包,已安装仍无法解决
解决导入错误:No module named 'modules.MainWindow'; 'modules' is not a package
核心问题
你说的“modules库”根本不是PyPI上的公开功能包,你大概率把自己项目里的本地模块包和第三方库搞混了。PyPI上的modules是个冷门旧包,和你要的MainWindow完全无关,所以安装它没用。
解决步骤
检查项目结构:你的项目必须是如下结构,
modules才会被Python识别为包:项目根目录/ ├── main.py # 你的主代码文件 └── modules/ ├── __init__.py # 必须存在,空文件也可以 └── MainWindow.py # 包含MainWindow类的文件没有
__init__.py的话,Python不会把modules当成包,直接报错;同时要保证main.py和modules文件夹在同一层级。卸载无关的第三方包:先把误装的没用
modules包删掉:pip uninstall modules验证Python模块搜索路径:如果结构没问题还是报错,可能Python没找到你的项目目录。在主代码开头加几行调试:
import sys print(sys.path) # 打印Python的模块搜索路径要是输出里没有你的项目根目录,手动添加:
import sys import os sys.path.append(os.path.dirname(os.path.abspath(__file__)))检查大小写一致性:Linux/macOS系统文件名区分大小写,确保:
- 文件名是
MainWindow.py(不是小写或其他变体) - 导入的
MainWindow类名和文件里定义的完全一致
- 文件名是
内容的提问来源于stack exchange,提问作者BLAZE GAMING
相关产品推荐
相关产品推荐

