如何在Jupyter Notebook中使用Python虛擬環境?
如何在使用Jupyter Notebook時,解決Python虛擬環境間的切換問題?本文一步步幫你拆解。希望你能夠避免踩坑的痛苦,把更多的時間花在愉快的編程上。
痛點
Python目前有兩個主版本並存,這很讓人苦惱。
一般人對於軟體,總是抱持著「喜新厭舊」的心態。見到小紅點兒,就忍不住升級。然而對Python來說,這條規律不大適用。
雖然Python 3有許多優於Python 2的特性,但是Python 2的生態系統更為完善,支持的包更多。因為生態系統內部的依賴關係,許多軟體包的運行說明會直接指定「僅適用於Python 2.7版本」。
所以,你會在不同的應用場景下切換這兩種Python版本。
我本人比較懶,哪個版本支持的軟體包多,更適合我使用,我就用哪個。所以,我安裝Anaconda這個Python集成運行環境的時候,選擇的是2.7版本。
但是近幾天,我遇到了點兒麻煩。
為了進一步學習和掌握學Tensorflow,我買了本書。
這本書配套代碼的調試環境,是Jupyter Notebook,Python版本是3.6。
我自然不可能刪除掉原先安裝的Anaconda,重裝一個3.6版本。那樣我日常工作就無法進行了。
我選擇的方式,是安裝虛擬環境。
虛擬
在虛擬環境里,各種軟體包的版本,都由你來指定。它們和系統默認Python環境是相互隔離的,因此互不干擾。
我給這個用於學習Python 3版本Tensorflow的虛擬環境起了個好記的名字,叫做tfpy3。
進入終端環境,使用Anaconda的環境創建命令,一行代碼就可以創建成功。
conda create -n tfpy3 python=3n
我在~/learn/實驗目錄下創建了一個名為tensorflow的文件夾。創建好後進入。
cd learn/tensorflown
下面我們呼喚剛才創建的虛擬環境:
source activate tfpy3n
這時你會發現終端提示符前面出現了特定虛擬環境標識。
虛擬環境順利載入。
在這個虛擬環境下,我們就可以安裝針對Python 3.6的最新版Tensorflow了。
pip install tensorflown
好了,1.3.0版本tensorflow安裝成功。下面我們就呼叫Jupyter Notebook,來編碼吧!
jupyter notebookn
咦?為什麼創建新筆記本的選項中,只有默認的Python 2和後來安裝過的R?
tfpy3虛擬環境哪裡去了?根本找不到!
插件
頭痛半晌,突然想起古人那句:
吾嘗終日而思矣,不如須臾之所學也。
對啊,上網搜!
查詢了一下,很快發現了解決方案。原來為了讓Jupyter Notebook支持虛擬運行環境,需要在Anaconda里安裝一個插件。
回到終端下面,用C-c退出目前正在運行的Jupyter Notebook Server,然後執行:
conda install nb_condan
再重新開啟Jupyter Notebook:
jupyter notebookn
這下我們就能看到差別了——除了最新安裝設定的tfpy3外,之前用Anaconda設置過的其他虛擬環境也都可以在此選擇使用。太棒了!
我們選擇剛剛創建的tfpy3環境。
執行:
import tensorflow as tfntf.VERSIONn
第二行語句是反饋tensorflow的版本。
1.3.0,沒錯!這就是剛剛我們安裝的最新Tensorflow版本。
下面就是愉快的編碼時間了。加油!
討論
你在使用Python的過程中,遇到過切換版本的問題嗎?你是怎麼解決的?有沒有更為便捷的方法?你更喜歡Python 2還是3?為什麼?歡迎留言,分享給大家,我們一起交流討論。
如果你對我的文章感興趣,歡迎點贊,並且微信關注和置頂我的公眾號「玉樹芝蘭」(nkwangshuyi)。
如果本文可能對你身邊的親友有幫助,也歡迎你把本文通過微博或朋友圈分享給他們。讓他們一起參與到我們的討論中來。
推薦閱讀:
※在看spark大數據分析的時候,輸入書中的範例代碼卻提示缺少參數,怎麼辦呢?
※windows安裝anaconda 報錯failed to create anacoda menue?
※初學python者自學anaconda的正確姿勢是什麼??
※如何在多版本anaconda python環境下轉換spyder?