当我使用pip将OpenCV安装好之后,使用visual-studio编写代码时,出现了一个奇怪的问题。使用import cv2
导包后,当我输入cv2.
时,自动补全并未提示OpenCV内部的函数,而是出现cv2
、sys
、os
:
当我紧接着前一个cv2
之后再输入一个cv2
后,自动补全才可以正常地补全OpenCV内部的函数。但是大家应该知道,使用import
导包后,使用其内部函数时,只需使用一次包名就可使用其中的函数,所以每次写完代码,我还得将多余的cv2
删掉,很是麻烦。
我在网上搜索过多次,并未找到解决方法。我曾今怀疑是visual-studio的PTVS的缘故,可是有同学使用的pycharm也出现了同样的错误。所以我觉得可能是pip的原因,不过我并不知道该如何解决,希望有大神相助。
黄舟2017-04-18 10:35:45
目前已经算是解决了这个问题。
在上述问题中,我采用的是pip在线安装python-opencv,安装好之后,pip在python的安装路径下的Lib->site-packages中创建了一个文件夹CV2,也就是说python-opencv被安装在了Lib->site-packages->CV2中;而之后我改用第三方的一个离线安装包进行安装,其中opencv-python被安装在了Lib->site-packages下,并没有创建额外的文件夹。而采用后者,就不会出现上述问题。因此我推测上述问题的是pip在在线安装python-opencv造成的。
不过我现在并不明白为什么会这样。
我在网上查了很多类似的问题,其中很多人碰到的是不能补全的问题。我觉得他们遇到的可能是和我一样的问题,只是他们没有多写一个cv2
所以才不能补全吧。