PyCharm 2017专业版无法自动补全cv2包问题求助
解决PyCharm 2017专业版中cv2无法自动补全的问题
我之前在搭配Python 2.7、旧版OpenCV和PyCharm时也碰到过一模一样的自动补全问题,给你几个经过验证的解决办法,按顺序试试:
1. 确认并修复Python解释器的路径配置
PyCharm有时候没正确识别到OpenCV的安装路径,手动指定一下就行:
- 打开PyCharm,依次点击
File > Settings > Project: [你的项目名称] > Project Interpreter - 确保当前选中的是你安装了OpenCV的Python 2.7解释器
- 点击解释器名称旁的齿轮图标,选择
Show All,选中你的Python 2.7解释器后点击Show Paths - 点击加号,添加OpenCV Python包所在的路径:
- Windows系统一般是
C:\opencv\build\python\2.7\x64(根据你的OpenCV安装位置调整) - Linux/macOS则可能是
/usr/local/lib/python2.7/site-packages或者你自己指定的安装路径
- Windows系统一般是
- 添加完成后点击
OK保存,等待PyCharm重新索引项目
2. 生成cv2的类型提示文件(.pyi)
旧版本的OpenCV没有自带类型提示文件,PyCharm没法解析它的API结构,手动生成一个就能解决:
- 打开命令行,切换到你的Python 2.7环境(如果用了虚拟环境就先激活)
- 安装适配Python 2.7的
stubgen工具:pip install mypy==0.782(新版本mypy不支持Python 2.7) - 运行命令生成类型提示:
stubgen -o . cv2,这会在当前目录生成一个cv2文件夹,里面包含所有API的.pyi提示文件 - 把这个
cv2文件夹复制到你的Python 2.7的site-packages目录下,或者直接放在项目的根目录里
3. 清除PyCharm缓存并重启
有时候是PyCharm的索引缓存出了问题,重置一下就好:
- 点击
File > Invalidate Caches / Restart - 在弹出的窗口选择
Invalidate and Restart,等待PyCharm重启并重新索引所有依赖
临时应急方案
如果上面的方法暂时没生效,你可以先试试这个hack写法,能临时实现补全:
import cv2 from cv2 import *
内容的提问来源于stack exchange,提问作者Yoni Newman
相关产品推荐
相关产品推荐

