You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3自定义模块导入报错:ModuleNotFoundError问题求助

解决模块导入报错的几种方法

方法1:使用相对导入

在data/datadownload.py里改成相对导入写法:

from ..models.restaurant import Restaurant

注意:这种方式要求以包的形式运行项目,不能直接双击运行datadownload.py,需从项目根目录执行命令:

python -m data.datadownload

方法2:手动添加项目根目录到Python路径

在datadownload.py最顶部添加以下代码,强制让Python识别项目根目录:

import sys
import os
# 获取项目根目录的绝对路径并加入搜索路径
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))

# 之后即可正常导入
from models.restaurant import Restaurant

方法3:设置PYTHONPATH环境变量

打开终端进入项目根目录,执行对应系统的命令:

Windows(PowerShell)

$env:PYTHONPATH = "$(Get-Location);$env:PYTHONPATH"

Mac/Linux(bash)

export PYTHONPATH=$(pwd):$PYTHONPATH

设置完成后再运行脚本,Python就能自动识别根目录下的models模块。

额外注意事项

  • 确保models和data文件夹内都存在空的__init__.py文件,这样Python才会将它们识别为可导入的包。
  • 不要给脚本文件起与模块名重复的名字(比如models.py),避免命名冲突。

内容的提问来源于stack exchange,提问作者Saff.gh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 13:17:35