之前在虛擬機中使用python3及其套件管理軟體pip都沒什麼問題,但前一陣子看到Ubuntu 18.04出來了,就直接從16.04版升級上去。
升級的過程很順利,沒有遇到什麼問題,可是當我要使用pip時,就出現了「No module named ‘pip._internal’」這個錯誤訊息。
上網查了一下有幾種解決方法
- 用apt-get來升級或安裝pip。
- 使用easy_install安裝pip。
這兩種方式在我的Ubuntu虛擬機上都無法解決pip無法使用的問題。於是看到第三種解決方法。
首先,開啟console並輸入 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
,curl指令只是用來下載get-pip.py這個檔案,若你的系統中沒有安裝curl,可以先輸入 sudo apt-get install curl
來安裝curl,你也可以使用wget指令來下載這個檔案。
接著輸入 python3 get-pip.py --force-reinstall
來強制重新安裝pip。若你不是使用root帳號,會出現「拒絕不符權限的操作」這個訊息,請直接在最前加上sudo,使用root帳號來執行上述這個指令。
執行完後,系統會下載pip的安裝包,並且將目前系統中的pip移除並安裝剛才所下載的pip。安裝完後執行pip應該就可以正常使用了。
若你跟我一樣無法使用前面兩種解決方法,可以嘗試使用這個方法。
參考資料:
https://stackoverflow.com/questions/49940813/pip-no-module-named-internal