這個問題有用嗎? (單選)
0人
0%
有點用
0人
0%
完全沒用
0人
0%
還沒用上,先存著
投票
問題描述
我卸載了pip,而我安裝了pip3。現在,我想通過僅輸入pip3來使用pip。原因是我習慣只鍵入pip,每個指南都使用pip命令,所以每次我想複製和粘貼命令時,我都要將pip修改為{{1浪費時間。當我輸入pip3時,我有一個pip的錯誤,這意味著不會執行pip: command not found命令。是否可以將pip分指向pip?
解決辦法一.alias別名解決法
通過修改配置文件,~/.bashrc或者~/.zshrc添加別名:
alias pip=pip3改完後,
source ~/.bashrc # 如果是zsh就source~/.zshrc即可.
解決辦法二.添加到名為pip的$ PATH符號連結,指向pip3二進位文件
(順便說一句,即使關於pip並不是真正與python相關的問題,所以你應該重拍它)
將/usr/bin/pip備份/刪除,從所需的pip版本建立符號連結。
sudo mv /usr/bin/pip /usr/bin/pipbackup # 備份文件sudo rm -rf /usr/bin/pip # 刪除文件sudo ln -s /usr/bin/pip3.8 /usr/bin/pip # 3.8是你的版本號,改成你對應的版本號。解決辦法三.修改pip二進位文件
pip實際上一個腳本。 我們通過
which pip/usr/bin/pip # 這個是一般的安裝位置找到Pip的安裝位置,然後
sudo vim /usr/bin/pip#!/usr/bin/python2# -*- coding: utf-8 -*-import reimport sysfrom pip._internal import mainif __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(main())我們看第一行,他指向的是python2,我們把2改成3即可。
解決辦法四.軟體包管理法
大多數軟體包管理器應該允許您註冊希望使用的版本,同時保持依賴關係,而不是在bash中手動創建自己的別名並希望它不會與任何衝突。
例如在Linux上:
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1或在Mac上(MacPorts):
port select --set pip pip3儲備知識
pip --version # 查看pip的版本pip3 --version # 查看pip3的版本which pip # 查看pip的安裝位置which pip3 # 查看pip3的安裝位置推薦解決辦法
辦法一,新手推薦。因為不會傷筋動骨,出了問題直接刪除或者注釋別名即可。辦法二、三,有一定linux基礎的建議,這個是很好的處理方法。辦法四,軟體包這塊我個人不推薦,因為我也不知道為什麼要這麼做,最重要的是出了問題不知道如何解決。因為他很可能會傷害到環境。參考文獻