导入.py文件失败:ModuleNotFoundError: No module named 'w_web_page'
解决ModuleNotFoundError: No module named 'w_web_page'的问题
核心原因
你的w_web_page.py放在了虚拟环境的PyQt5包目录下,Python默认不会直接搜索第三方包的子目录来加载独立模块,而是把PyQt5当成一个顶层包。你直接用from w_web_page import...的写法,Python会在当前脚本目录、sys.path列出的顶层路径里找这个模块,自然找不到。
具体解决方法
使用正确的包内导入方式
因为文件属于PyQt5包的子模块,导入时要指定顶层包:from PyQt5.w_web_page import 你的类/函数名检查
sys.path配置
激活虚拟环境后,Python应该自动把C:\Users\Usuario\venv\Lib\site-packages加入sys.path,可以在脚本开头验证:import sys print(sys.path)如果该路径不在列表里,手动添加:
import sys sys.path.append("C:\\Users\\Usuario\\venv\\Lib\\site-packages")确认
PyQt5目录的包标识
确保C:\Users\Usuario\venv\Lib\site-packages\PyQt5下存在__init__.py文件(PyQt5安装后默认自带),这个文件是Python识别该目录为合法包的必要条件,若缺失则重新安装PyQt5。规范文件存放位置(推荐)
不要将自定义代码放在第三方包目录下,把w_web_page.py移到你自己的项目目录中,PyScripter会自动将当前脚本所在目录加入sys.path,此时直接用from w_web_page import...即可正常导入。
内容的提问来源于stack exchange,提问作者Renato Visintini
相关产品推荐
相关产品推荐

