pip升級失敗,解決 ModuleNotFoundError: No module named 'pip'
阿新 • • 發佈:2020-09-21
問題:
使用vscode給env虛擬環境升級pip,pip install -U pip
出現檔案拒絕訪問,提示沒有許可權,然後在全域性環境中敲
pip install --upgrade --userpip後,發現我虛擬環境下,nomodulepip
我:???人傻了
更新失敗。
解決辦法:
python -m ensurepip
python -m pip install --upgrade pip
解讀:
該ensurepip
軟體包提供了將pip
安裝程式引導到現有Python安裝或虛擬環境中的支援。這種引導方法反映了一個事實,即它pip
是一個具有自己的釋出週期的獨立專案,並且最新的可用穩定版本與CPython參考直譯器的維護版本和功能釋出捆綁在一起。
在大多數情況下,Python的終端使用者不需要直接呼叫此模組(pip
預設情況下應自舉),但是如果pip
在安裝Python(或建立虛擬環境)時或顯式解除安裝後跳過安裝,則可能需要使用此模組。pip
。
最簡單的呼叫是:
python -m ensurepip
pip
如果尚未安裝,則將安裝此呼叫,否則不執行任何操作。要確保的安裝版本pip
至少與捆綁的版本相同ensurepip
,請傳遞以下--upgrade
選項:
python -m ensurepip --upgrade
預設情況下,pip
安裝到當前虛擬環境(如果一個處於活動狀態)或系統站點程式包(如果沒有活動的虛擬環境)中。
pip是安裝其他包的主要方式,那麼誰來安裝pip呢,ensurepip有點元安裝的感覺,給沒有安裝pip的env虛擬環境安裝pip(一般生成env虛擬環境是自帶pip的,當然可以選空白)