Python/Anaconda多版本共存的解決方案

博客中的文章均為meelo原創(chuàng),請務(wù)必以鏈接形式注明本文地址

雖然Python2大勢已去,眾多項目都已經(jīng)支持Python3,但總有一些教程和項目只支持Python2。通常情況是計算機里既裝著Python2,也裝了Python3。

多Python版本共存的解決方案已經(jīng)有不少,簡單羅列幾種:

直接修改程序文件名借助pyenv和virtualenv、借助conda環(huán)境

這些方法都有各自的不足,直接修改程序文件名仍然不能解決pip包管理器的問題,對jupyter之類的腳本也不起作用;virtualenv和conda切換的流程稍顯復(fù)雜,需要開啟和關(guān)閉虛擬環(huán)境。

這里提出一種新的解決方案,適用于Windows和Linux所有系統(tǒng),但教程中以windows系統(tǒng)為例。系統(tǒng)選擇哪一個Python是根據(jù)PATH系統(tǒng)路徑?jīng)Q定的。

執(zhí)行一個程序時,系統(tǒng)從系統(tǒng)路徑中搜索相同文件名的可執(zhí)行文件。存在Python版本意味著有多個可執(zhí)行程序的名字都是python,這時系統(tǒng)選擇哪一個版本根據(jù)路徑在系統(tǒng)路徑的順序決定。

C:\Python27;C:\Python27\Scripts;C:\Users\meelo\Anaconda3;C:\Users\meelo\Anaconda3\Scripts

如果系統(tǒng)路徑如上所示。Python27在前,則默認(rèn)使用的版本是Python2.7。

我的解決方案正是利用了這一點。下面是干貨時間。

步驟1:刪除系統(tǒng)路徑中其它Python版本的路徑,只留下默認(rèn)使用的版本

注意Python在系統(tǒng)路徑中包含兩個路徑一個是根目錄C:\Python27,一個是Scripts目錄C:\Python27\Scripts

設(shè)置系統(tǒng)路徑可以依次執(zhí)行? win-x > 系統(tǒng) > 高級系統(tǒng)設(shè)置 > 環(huán)境變量 > 編輯PATH

步驟2:在C:\Windows目錄下建立腳本

腳本名稱:py2.bat

腳本內(nèi)容

@echo off

set path=C:\Users\meelo\Anaconda2;C:\Users\meelo\Anaconda2\Scripts;%path%

腳本所其的作用就是臨時將需要使用的Python版本路徑加入到系統(tǒng)路徑中。注意是臨時改變系統(tǒng)路徑,因此其它的命令行(shell)并不受影響。

腳本中顏色為綠色的部分就是臨時需要使用Python版本的路徑。@echo off意思是在執(zhí)行腳本時,不打印輸出命令的內(nèi)容。

步驟3:臨時切換Python版本

py2

python -V

pip install seaborn

py2 & python -V

pip install seaborn

臨時切換Python就只需要在原有命令前加上 py2 & 或者單獨在之前執(zhí)行命令 py2。如果選擇在命令前加上py &,也只有第1條命令需要加上,后面的命令都會自動使用切換后的Python版本了。

最后,直接win+R在運行里輸入 py2 & python,以上方法仍然是生效的。

在研究了很多方法之后,發(fā)現(xiàn)我的方法還是最簡單的。有什么問題歡迎留言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容