當運行系統安裝的python時,我可以找到pip:
% which python3
/usr/local/bin/python3
% python3 --version
Python 3.9.7
% /usr/local/bin/python3 -m pip --version
pip 21.3.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
但是,如果我用python3它創建一個 virtualenv并激活它,那么我再也找不到pip:
% which python3
~/venv/bin/python3
% ls -la `which python3`
~/venv/bin/python3 -> /usr/local/bin/python3
% python3 -m pip --version
~/venv/bin/python3: No module named pip
我對此完全感到困惑。
通過可能使pip消失的符號鏈接閱讀是什么意思?
uj5u.com熱心網友回復:
蟒的venv在python 3.3引入模塊不同于virtualenv并且具有的一個子集virtualenv的特征。
來自https://virtualenv.pypa.io/en/latest/
該
venv模塊不提供該庫的所有功能,僅舉幾個突出的例子:
- 速度較慢(因為沒有應用資料種子方法)
- 不可擴展,無法為任意安裝的python版本創建虛擬環境(并自動發現
這些),- 不能通過 pip 升級,
- 沒有那么豐富的編程 API(描述虛擬環境而不創建它們)。
所以使用創建的環境venv沒有單獨pip安裝,所以我建議使用virtualenv。
您可以virtualenv通過運行安裝模塊
pip3 install virtualenv
python3 -m env_name .
或者如果您已經virualenv安裝并且在您的路徑中,您也可以使用
virtualenv env_name -p python3
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/383907.html
