Jupyter导入OCR模块遇ModuleNotFoundError:我遗漏了什么?
解决Jupyter中
ModuleNotFoundError: No module named 'ocr'的问题 嗨,我来帮你梳理下这个问题~你遇到的这个错误,核心原因是这个ocr并不是PyPI上可以直接通过pip安装的公开包,它大概率是某个特定项目里自定义的本地模块,所以Python找不到它。下面是具体的排查和解决步骤:
1. 检查是否拥有完整的项目代码
首先你得确认:你是不是只拿到了这个Jupyter notebook文件,却没拿到配套的ocr文件夹?
- 正常情况下,你的工作目录里应该有这样的结构:
你的工作目录/ ├── ocr/ │ ├── __init__.py # 必须有这个文件,让Python识别为包 │ ├── characters.py │ ├── normalization/ │ │ ├── __init__.py │ │ ├── word_normalization.py │ │ └── letter_normalization.py │ └── helpers.py └── 你的Jupyter notebook.ipynb
如果没有这个ocr文件夹,那你需要找到这个notebook对应的完整项目代码,把整个ocr目录都下载下来放到当前工作目录里。
2. 确认Jupyter的工作目录是否正确
有时候你虽然有ocr文件夹,但它不在Jupyter的当前工作目录下,Python也找不到它。
- 你可以在notebook里先运行这段代码,查看当前工作路径:
import os print(os.getcwd()) - 如果
ocr文件夹不在这个路径下,有两种解决办法:- 直接把
ocr文件夹移动到上述输出的路径里; - 或者把
ocr所在的父目录添加到Python的搜索路径中,再尝试导入:import sys # 替换成包含ocr文件夹的那个目录的路径 sys.path.append("/path/to/folder-containing-ocr") # 现在再导入模块 from ocr import characters from ocr.normalization import word_normalization, letter_normalization from ocr.helpers import implt, resize, img_extend
- 直接把
3. 排查是否是项目依赖未配置
如果是从某个开源项目克隆来的代码,有些项目会有依赖需要安装,但注意:这里的ocr是项目本地模块,不是依赖包,所以先确保项目结构完整,再看是否需要安装其他依赖(比如OpenCV、NumPy这类)。
内容的提问来源于stack exchange,提问作者Vaishali Saraswat
相关产品推荐
相关产品推荐

