解決pycharm中opencv-python導(dǎo)入cv2后無法自動補全的問題(不用作任何文件上的修改)
發(fā)現(xiàn)問題
當(dāng)我用pip安裝好opencv-pyton后,我激動得在python項目中導(dǎo)入cv2
就像這樣:
import cv2 as cv
but…
碼代碼時竟然沒有自動補全!??!這我還能忍,可是CTRL+左鍵竟然不能看源碼!?。。。。【拖襁@樣:

這我就受不了了。于是開始找解決方法
解決問題
查找解決方法,
有的說要將cv2.cp36-win_amd64.pyd文件挪到site-packages下;
有的說要修改_init_.py文件
有的說…
直到我看到https://segmentfault.com/q/1010000008971601這篇文章

于是突然頓悟!

原來真正的實現(xiàn)opencv功能的cv2模塊是在cv2/data文件夾下
而cv2下的_init_.py文件內(nèi)描述的也很清楚
import importlib
from .cv2 import *
from .data import *
# wildcard import above does not import "private" variables like __version__
# this makes them available
globals().update(importlib.import_module('cv2.cv2').__dict__)
它的目的就是將cv2/data/下的真正的cv2功能模塊放在cv2目錄下,也就意味著
變成了這種形式:cv2/cv2
所以你在導(dǎo)入cv2模塊兒時要這樣做

正確的做法
import cv2.cv2 as cv
自動提示的功能出現(xiàn)了。

CTRL+鼠標左鍵查看源碼的功能也回來了。

針對一些疑惑進行可能的解答,也不知道對不對。
由于我之前升級過IDE,所以這個項目是我從外部導(dǎo)入的,首先我為這個項目選擇python解釋器路徑,然后就會出現(xiàn)下圖的進度條。(這個項目在構(gòu)建之初,用virtualenv建立了一個獨立的環(huán)境,所以python解釋器選擇的是項目路徑下的。)
庫文件在剛剛被添加到項目中時,pycharm會針對這個庫文件,構(gòu)建索引(building index)。然后會顯示一個進度條,在進度條走完之前,使用這個庫中的方法確實會出現(xiàn)無法自動提示的問題。

等待進度條走完,也就是python環(huán)境中的庫都被構(gòu)建索引,然后再使用庫中的方法,自動提示就有了。
這是我新建的.py文件,然后進行的測試

總結(jié)
到此這篇關(guān)于解決pycharm中opencv-python導(dǎo)入cv2后無法自動補全的問題(不用作任何文件上的修改)的文章就介紹到這了,更多相關(guān)pycharm opencv-python導(dǎo)入cv2無法自動補全內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)對特定列表進行從小到大排序操作示例
這篇文章主要介紹了Python實現(xiàn)對特定列表進行從小到大排序操作,涉及Python文件讀取、計算、正則匹配、排序等相關(guān)操作技巧,需要的朋友可以參考下2019-02-02
VSCode Python開發(fā)環(huán)境配置的詳細步驟
這篇文章主要介紹了VSCode Python開發(fā)環(huán)境配置的詳細步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02
使用Python FastAPI構(gòu)建Web服務(wù)的實現(xiàn)
這篇文章主要介紹了使用Python FastAPI構(gòu)建Web服務(wù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
使用PyInstaller將python轉(zhuǎn)成可執(zhí)行文件exe筆記
這篇文章主要介紹了使用PyInstaller將python轉(zhuǎn)成可執(zhí)行文件exe筆記,需要的朋友可以參考下2018-05-05
Python?使用?pip?安裝?matplotlib?模塊的方法
matplotlib是python中強大的畫圖模塊,這篇文章主要介紹了Python?使用?pip?安裝?matplotlib?模塊(秒解版),本文給大家介紹的非常詳細,需要的朋友可以參考下2023-02-02
python錯誤:AttributeError: ''module'' object has no attribute
這篇文章主要介紹了python錯誤:AttributeError: 'module' object has no attribute 'setdefaultencoding'問題的解決方法,需要的朋友可以參考下2014-08-08

