最近我遇到了 VScode 無法識別已安裝模塊的問題。
我使用的是 anaconda 2.1.2,虛擬環境有 python 3.8.12,VScode 是 win10 作業系統上的 1.61.2 版本。
我知道這樣做的兩個模塊是 kivy 和 opencv。Pandas、numpy 和許多其他模塊作業正常。
當我在撰寫 kivy 腳本時,我發現在嘗試從 VScode 運行腳本時,我會收到一個ModuleNotFoundError: No module named 'kivy'錯誤,并且 pylance 說“無法解決匯入“kivy”問題,而 kivy 有彎曲的下劃線。但最終我發現通過終端運行腳本它可以作業。這是一個非常簡單的測驗腳本,所以我只是在沒有正常作業的智能感知或 VScode 除錯的情況下艱難完成。但是現在我正在嘗試在新環境中使用 opencv 做一個更復雜的程式,并且正在發生同樣的事情。
這是測驗腳本:
import cv2
img = cv2.imread("galaxy.jpg",0)
print(type(img))
print(img)
通過 VScode 運行時,輸出為:
import cv2
ModuleNotFoundError: No module named 'cv2'
當我通過 VScode 終端運行時,python script_test.py我得到:
<class 'numpy.ndarray'>
[[14 18 14 ... 20 15 16]
[12 16 12 ... 20 15 17]
[12 13 16 ... 14 24 21]
...
[ 0 0 0 ... 5 8 14]
[ 0 0 0 ... 2 3 9]
[ 1 1 1 ... 1 1 3]]
pip freeze對于環境給出:
certifi==2021.10.8
mkl-fft==1.3.1
mkl-random @ file:///C:/ci/mkl_random_1626186184278/work
mkl-service==2.4.0
numpy @ file:///C:/ci_310/numpy_and_numpy_base_1643798589088/work
opencv-python==4.5.5.62
six @ file:///tmp/build/80754af9/six_1644875935023/work
wincertstore==0.2
I went over several similar posts, but the only answers I saw where to uninstall and reinstall using a different method, i.e.: conda install -c conda-forge opencv,conda install opencv or some variation of a pip command, but none seemed to change anything.
ANY help to solve this issue would be greatly appreciated. If I have to develop this the way I did for my kivy script I will go insane!
uj5u.com熱心網友回復:
我不知道為什么會這樣,但確實如此。
我通過右鍵單擊并從帶有腳本的檔案夾啟動來打開 vscode。彈出兩個視窗錯誤框,都說:
“此應用程式無法在您的 PC 上運行。
要查找適用于您 PC 的版本,請咨詢軟體發行商”
在為兩個 VScode 單擊確定后,我在右下角出現了一個警告框,說沒有安裝中斷器。所以我按了 shift ctrl P,為虛擬環境選擇了中斷器,vscode 看到了 opencv,一切正常。
我關閉vscode又試了一次,同樣的windows錯誤框,同樣的成功結果。
不用這種方式打開vscode,我沒有報錯框,但是shift crtl p,選擇同一個確切的解釋器沒有效果,VScode還是找不到opencv。
我可以處理在錯誤框上單擊“確定”并認為這已解決,但如果有人有答案為什么這有效,我會很好奇。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/439574.html
