在Google Colab运行DAN仓库代码遇ModuleNotFoundError问题求助
解决DAN项目Colab运行的ModuleNotFoundError问题
问题原因
你遇到的ModuleNotFoundError: No module named 'basic',是因为用!python3单独执行脚本时启动了新的Python进程,这个进程的sys.path没有包含项目根目录——你之前在Colab会话里添加的路径只对当前交互会话有效,新进程不继承这个设置。
解决方案
以下三种方式任选其一即可:
方式1:用Colab的%run命令执行脚本
%run会在当前Colab会话中执行脚本,能继承之前设置的sys.path。替换原来的执行命令:
%run /content/drive/MyDrive/DAN/DAN/OCR/document_OCR/dan/predict_example.py
方式2:执行时通过环境变量指定路径
在执行脚本前,用PYTHONPATH环境变量把项目根目录加到Python的路径里:
!PYTHONPATH=/content/drive/MyDrive/DAN/DAN python3 /content/drive/MyDrive/DAN/DAN/OCR/document_OCR/dan/predict_example.py
方式3:修改predict_example.py脚本
在脚本开头添加路径配置,确保脚本自身能找到依赖模块。打开predict_example.py,在开头导入语句后添加:
import sys sys.path.append('/content/drive/MyDrive/DAN/DAN')
内容的提问来源于stack exchange,提问作者Mohammed
相关产品推荐
相关产品推荐

