如何在Anaconda的python和系統自帶的python之間切換

安裝anaconda後,建立了一個tensorflow的virtual env,其中安裝了python3.6
但是我運行ros用的是python2.7,如何切換?

查看默認python路徑
$ which python
顯示/home/zgd/anaconda3/bin
查看系統PATH:echo $PATH

首先說解決辦法,我的~/.bashrc中有條
export PATH="/home/zgd/anaconda3/bin:$PATH"
這就是罪魁禍首,將其註釋掉,source,終端輸入python,顯示2.7

說下其他幾個思路
第一個思路是通過anaconda建立一個python2.7的virtual env

比如我現在默認是3.6,要切換到2.7
conda create --name python27 python=2.7
source activate python27
source deactivate python27
缺點是anaconda會另外安裝python2.7,然後每次都要激活python27環境,在虛擬環境中運行ros,想想好像都不太科學

 

第二個思路是通過軟鏈接的方法

我們在終端輸入python執行的是一個軟鏈接,系統會在PATH中尋找python這個鏈接,由於在我的PATH中/home/zgd/anaconda3/bin在前,所以會先執行其中的python鏈接,而這個鏈接指向python3.6

在沒有這個路徑前,系統會搜尋到/usr/bin/下的python鏈接,而這個鏈接是指向python2.7

那麼基本思路是刪除掉原來/home/zgd/anaconda3/bin下的python鏈接,重新生成到python2.7的鏈接
sudo rm /home/zgd/anaconda3/bin/python
sudo ln -s /usr/bin/python2.7 /home/zgd/anaconda3/bin/python
要復原則先執行第一步rm,然後
sudo ln -s /home/zgd/anaconda3/bin/python3.6 /home/zgd/anaconda3/bin/python
缺點是每次需要用到不同python時需要重新建立鏈接

 

綜上還是直接修改PATH變量來得方便

 

(Anaconda 如何在 Python3和Python2之間切換?)

(在anaconda中安裝、切換python的版本:2.7~3.6)

(Linux下安裝python3.6和2.7版本,如何將python改爲默認的2.7版本的方法)

(修改ubuntu默認的Python版本號)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章