Mac VS Code中导入cv2、imutils提示无对应模块如何解决
问题解决步骤
这个报错是VSCode运行Python时使用的解释器和你安装opencv-python的解释器不匹配导致的,按以下步骤排查:
- 先确认opencv安装路径:打开终端依次执行以下命令
查看输出的which python3 pip3 show opencv-pythonLocation字段是否匹配你刚才查到的Python3对应site-packages目录,如果执行pip3 show opencv-python提示找不到包,执行pip3 install opencv-python imutils重新安装依赖。 - 切换VSCode Python解释器:按快捷键Command+Shift+P唤起命令面板,输入
Python: Select Interpreter,选择和上一步查到的路径一致的Python3解释器,不要选择系统自带的Python2版本,也不要选择未安装依赖的其他虚拟环境解释器。 - 修正导入写法:删掉
from cv2 import cv2的写法,直接使用import cv2即可,该兼容写法仅适用于非常旧的opencv版本,新版本使用反而会触发导入错误。 - 验证是否修复:在VSCode当前项目的终端中执行
python3 -c "import cv2; print(cv2.__version__)",如果能正常输出版本号,再运行你的项目代码即可。
如果你的项目使用了venv/conda等虚拟环境,需要先激活对应虚拟环境后再执行pip安装依赖,同时在VSCode选择解释器时选中当前项目虚拟环境下的Python版本。
内容的提问来源于stack exchange,提问作者user14250770
相关产品推荐
相关产品推荐

