python3與anaconda2共存


我是先下載了python3,后來因為需要2為了省事就去下載了anaconda2,但發現這里有個很嚴重的共存問題。

找了一下網上的各種共存問題,發現網上的基本上都是基於一個anaconda然后通過虛擬環境創建另外一個環境,從而實現兩個py共存。

但這個根本不是我的本意,之前找了挺多在方法沒能解決就算了。現在使用conda去下載包時,居然發現沒有-r這個命令。。。也就是說不能像pip -r requirements.txt 一樣一次性安裝所有包,只得一個一個很麻煩。於是就還是想把它們共存下去。

 

其實py2和py3的共存方法有很多,我也是看了這篇博客才有點啟發:http://blog.csdn.net/dream_an/article/details/51248736 但他的是要把原生py2和py3共存,而不是像我這樣是一個py一個anaconda,網上一點這種共存的資料都沒有,那我來寫一個吧。

主要還是看到那篇博客里面的python2 -m pip list #查看 這里受到啟發,發現可以用不pip2 list,而直接通過python去指定py2引導pip2.

我本來是原有的py3和其script環境變量

 

那個時候命令行下只能使用py3(我這里沒吧py3里面的python.exe改成python3.exe,所以在cmd下運行python是默認進入python3和運行pip是進入pip3,個人也更多使用3),安裝了anaconda2之后,我沒動環境變量,所以在cmd下只能使用anaconda2的conda,但不能進入其的python2和pip2,所以這點有點燥。然后這次找了篇博客改了一下anaconda2文件夾里面的python.exe改成python2.exe,pip.exe改成pip2.exe,再在換金幣安利加入E:\Anaconda2和E:\Anaconda2\Scripts\,發現這個時候在cmd下就能使用python2進入py2了,但遺憾的是pip2無用,甚至conda都沒用了看這個報錯貌似是因為我更改了python.exe成python2.exe的原因吧。剛好看到那篇的-m命令,靈機一動,於是想到了把anaconda2里的python.exe復制一份重命名就像這樣,把anaconda里的pip2改回pip,然后把環境變量中py2的E:\Anaconda2\Scripts\刪掉只剩E:\Anaconda2(當然py3的環境變量放在他們前),於是這樣就實現了原生python3與anaconda2的共存了!(只是py2使用pip起來要麻煩一點,要像這樣使用:python2 -m pip ***)

這樣就測試到了,可以把他們分開來使用了!(一定要記得python3的環境變量在python2之前,且python2不需要pip的環境變量)

------------------------------更新---------------------

 而ipython就更容易了,之前我3的ipython在安裝jupyter不知道出了什么問題,pip install的時候表示有ipython,但是在命令行卻進不了ipython(當時我的電腦只有3),很納悶。

后來裝了anaconda2后,2里面的ipython就成了正統的了,在命令行輸入ipython都是進入2的。

直到今天,我用-U升級了一下py3里的ipython,然后直接在命令行里輸入ipython進入的就是3的了(因為我的pip環境變量是3),我當時在想怎樣進入ipython2,

 發現-m的命令無法打開ipython,但是能打開2的jupyter

3的jupyter直接打開就ok了:

我當時報着試一下的心態輸入ipython2,結果還真進入了ipython的2,(我沒有改2site-package里面的ipython)

 

於是再試一下ipython3,發現這樣卻也可行:

 

但輸入python3,就不行,還是有點怪的啊:

或許ipython是設計好了的可區分吧。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM