Mac 終端進入 conda 虛擬環境後 pip 依然安裝到全局下的問題解決

一、問題起因:

之前折騰安裝各種軟體
可能是不小心改了些什麼莫名奇妙的設置
然後就出現了問題:

  • mac 系統 Catalina
  • 版本10.15.5
  • 在 anaconda 中創建了新的虛擬環境(比如 test)
  • 然後在 mac 終端中 輸入source activate test 進入虛擬環境
  • 使用 pip install 安裝的東西都被安裝到了全局下,而不是虛擬環境中
  • 使用 which pip 查看,顯示為全局下的 pip
  • 使用 which python 查看,顯示為全局下的 python

二、嘗試了無效解決方案

1. 在pip前加上python -m

python -m pip install <package>

結果:無效,依然是安裝到了全局
原因分析:因為這裡用的依然是全局的 python,所以這麼做沒有解決問題,這個方法我推測是適用於使用的虛擬環境 python 和 全局 pip 的情況

2. 使用 conda install

conda install <package>

結果:無法安裝
原因分析:估計還是之前改了某些設置挖的坑,具體原因不明,反正裝不了

三、最終解決方案

答案是:重裝 anaconda

但是重裝過程依然遇到了很多坑!

  • 原來以為可以直接覆蓋安裝,所以下載安裝包以後就直接運行了,結果我選的是 anaconda3 文件夾,他給我裝到了 anaconda3/anaconda3 文件夾
  • 刪除重裝到根目錄,想著這下沒問題了吧,坑爹的是系統居然沒有覆蓋安裝,而是新建了一個 opt 文件夾,安裝到了 opt/anaconda3 中,吐血
  • 上面兩次嘗試,在終端里 source activate test 無法啟動虛擬環境,而conda info --envs可以看到虛擬環境列表
  • 所以最終,老老實實把 envs 文件夾備份好,然後刪除 anaconda,然後再重裝,再把 envs 移進去,終於搞定了。。。
Tags: