摘要:所以,應(yīng)該直接了當(dāng)?shù)陌惭b,其中也會(huì)自動(dòng)安裝上,作為其運(yùn)行的。這只是一開始,之后還有里各種找不到外部安裝的的情況。終于,意識(shí)到這些方法都是錯(cuò)誤的思路。這才知道原來是無法識(shí)別。
為什么要用IPython/Jupyter?
python里面調(diào)試確實(shí)有點(diǎn)煩惱,尤其是在vim里,想要嘗試一些簡(jiǎn)單的編碼問題,實(shí)在是有點(diǎn)麻煩,不想到命令行模式一行一行執(zhí)行,也不想再新建一個(gè)文件測(cè)試一個(gè)簡(jiǎn)單的功能。
而且就是不管這些,測(cè)試一個(gè)簡(jiǎn)單的功能如學(xué)習(xí)語法、測(cè)試編碼、測(cè)試新學(xué)習(xí)的包等,在IDE里面測(cè)試,看不到每個(gè)部分的output效果(除非自己手動(dòng)去命令行里復(fù)制或截屏),在命令行里測(cè)試,則沒法輕松撤銷前面的代碼。。。。
所以這時(shí)候才想到好像前陣子看到y(tǒng)outube視頻里別人用IPython,是那種又能輕松編輯又能為每部分顯示output效果,還能在旁做markdown筆記的東西。
出于這個(gè)想法,搜到了這篇知乎回答,看到了不少有意思的東西,感覺又展開了一個(gè)嶄新的領(lǐng)域,python的視界豁然開朗。
這篇文章極好的解釋了IPython的入門用法,相當(dāng)酷!我怎么竟然這么久都不知道這種東西的存在?
據(jù)說一開始IPython是作為IPython shell的存在,后來Jupyter融合了它,又把自己和IPython上獨(dú)立出來,做成了網(wǎng)頁版的Jupyter Notebook這樣的東西。Jupyter強(qiáng)大的特性,加上和各種數(shù)據(jù)研究庫(kù)的緊密結(jié)合,真讓人不能忽視它的存在了。
IPython的安裝方法,簡(jiǎn)單地pip install ipython即可。
但是,想到IPython本身一個(gè)shell,讓我想起了我自己用的shell是zsh,讓我把zsh切換到別的shell里面去,還真有點(diǎn)不喜歡。。這可能是個(gè)stylish issue吧。
所以,應(yīng)該直接了當(dāng)?shù)陌惭bjupyter,其中也會(huì)自動(dòng)安裝上IPython shell,作為其運(yùn)行的Kernel。
~只安裝Jupyter本身的話,很簡(jiǎn)單:python -m pip install jupyter。不過根據(jù)官方文檔,強(qiáng)烈建議安裝Jupyter的Anaconda發(fā)行版,像大禮包一樣的自動(dòng)安裝python+Jupyter Notebook+一系列數(shù)據(jù)研究庫(kù)。因?yàn)楸緛砭褪且芯繖C(jī)器學(xué)習(xí)等一系列數(shù)據(jù)研究的,所以Anaconda正合適。這個(gè)我覺得再好不過了,所以直接跳到Anaconda頁面去看安裝方法。然后看到,Anaconda安裝方法是不能簡(jiǎn)單apt-get或brew或pip install的,500M左右的大小,需要下載后啟動(dòng)圖形安裝工具或shell腳本安裝(.sh文件本身就500M,而且安裝分為Python 3和Python 2的兩種方式。~
然后就會(huì)發(fā)現(xiàn):Anaconda誰裝誰后悔!
Anaconda體積龐大,軟件管理看起來一體化簡(jiǎn)單,實(shí)際上在處理一些Bug和自定義設(shè)置的情況下非常不好定位。我在Mac上初次安裝Anaconda大禮包后,連簡(jiǎn)單的jupyter notebooke這樣的命令都執(zhí)行不了,詳盡了辦法最后才用直接指定路徑的方式運(yùn)行。這只是一開始,之后還有notebook里各種找不到外部安裝的python package的情況。
所以還是別圖便宜,手動(dòng)安裝一步一步來吧。一鍵安裝很多時(shí)候都沒那么好。
試了下手動(dòng)安裝的方法,pip install jupyter,或者官方的python -m pip install jupyter,都會(huì)發(fā)生jupyter: command not found找不到命令。參考了數(shù)十篇網(wǎng)絡(luò)上中英文文章,都沒有解決。常說的直接引用~/.local/bin這個(gè)位置的 jupyter也不行(沒有)。
終于,意識(shí)到這些方法都是錯(cuò)誤的思路。
不管官網(wǎng)怎么推薦Anaconda,網(wǎng)絡(luò)上各種簡(jiǎn)單解說,總之Anaconda或pip install jupyter都很容易引發(fā)巨大的問題。由于jupyter的性質(zhì):它是調(diào)用python內(nèi)核的東西,用系統(tǒng)python還是用自己的python,這都是很敏感很麻煩的問題。用系統(tǒng)的python很容易識(shí)別不到或者被別的程序修改導(dǎo)致bug,用自己的python會(huì)導(dǎo)致別的地方安裝的package在jupyter里識(shí)別不了。
所以:
參考了這篇的思路,正確的方法是在virtualenv虛擬環(huán)境下,絕對(duì)安全封閉的環(huán)境下用pip安裝jupyter。這樣的話,第一,不需要sudo pip這樣敏感的東西去安裝jupyter這么復(fù)雜的工具;第二,也保證了jupyter不會(huì)搞亂其它東西。
然后,二話不說,在已有virtualenv的情況下,在某個(gè)文件夾里建立虛擬環(huán)境,并啟動(dòng)虛擬環(huán)境。然后簡(jiǎn)單一句pip install jupyter,完成安裝。
安裝完成后jupyter notebook,完美運(yùn)行!
# for Python2 $ pip install jupyter # for Python3 $ pip3 install jupyter
這樣的話,即使以后要在jupyter里各種安裝插件、各種配置新kernel等,都不用害怕了,因?yàn)樵僭趺赐媾?,也出不去這個(gè)圈。
話說回來,實(shí)際上你也沒什么需要在全系統(tǒng)配置jupyter的必要,在某個(gè)文件夾玩就足夠足夠的了。
何必呢?
用命令行啟動(dòng)很簡(jiǎn)單,在某個(gè)工作目錄,輸入:
$ jupyter notebook
這樣就能以這個(gè)目錄打開一個(gè)http://localhost:8889/tree的網(wǎng)頁,一切都在這個(gè)網(wǎng)頁里操作。
正確的啟動(dòng)Jupyter正確的方式,實(shí)際上是在Virtualenv虛擬環(huán)境下啟動(dòng),可以隨意安裝各種包,適配各種Python版本環(huán)境:
# 啟動(dòng)Virtualenv $ source ~/PATH-TO-VENV/activate # 啟動(dòng)Jupyter (venv)$ jupyter notebook添加Python3 Kernel
參考:Jupyter增加內(nèi)核
默認(rèn)的只有Python2 Kernel,所以只能建立Python2的筆記。
要添加也很簡(jiǎn)單。
強(qiáng)烈建議在Python3的Virtualenv虛擬環(huán)境下實(shí)現(xiàn)?。?!
# 啟動(dòng)Virtualenv $ source ~/PATH-TO-VENV/activate # 在Python3的虛擬環(huán)境下安裝Kernel (venv3)$ pip3 install ipykernel # 將Kernel添加進(jìn)Jupyter筆記選項(xiàng)中 (venv3)$ python -m ipykernel install
啟動(dòng)Jupyter notebook后,就會(huì)看到Kernel里面多了Python3了:
總是報(bào)command not found jupyter錯(cuò)誤,說沒有這個(gè)命令。一開始還以為是zsh的問題,可是切換到bash也一樣。
照著網(wǎng)上攻略在.zshrc里改也沒用,在.bash_profile里改也沒用。
然后發(fā)現(xiàn),在Mac自帶的Terminal.app中就可以正常打開,不需要改任何配置。
這才知道原來是iTerm2無法識(shí)別。于是在Terminal.app中用which命令查看jupyter命令的所在處,看到它位于/Users/我的用戶名/anaconda2/bin/jupyter這個(gè)地方。
于是直接在~/.zshrc中加入alias:
$ alias jupyter="/Users/我的用戶名/anaconda2/bin/jupyter"
重啟iTerm2,好用!
但是,iTerm2中的bash還是不能訪問,用同樣的方法也不行。暫時(shí)沒找到解決方法。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41812.html
摘要:所以,應(yīng)該直接了當(dāng)?shù)陌惭b,其中也會(huì)自動(dòng)安裝上,作為其運(yùn)行的。這只是一開始,之后還有里各種找不到外部安裝的的情況。終于,意識(shí)到這些方法都是錯(cuò)誤的思路。這才知道原來是無法識(shí)別。 為什么要用IPython/Jupyter? python里面調(diào)試確實(shí)有點(diǎn)煩惱,尤其是在vim里,想要嘗試一些簡(jiǎn)單的編碼問題,實(shí)在是有點(diǎn)麻煩,不想到命令行模式一行一行執(zhí)行,也不想再新建一個(gè)文件測(cè)試一個(gè)簡(jiǎn)單的功能。 而...
摘要:使用該數(shù)據(jù)集,我們將構(gòu)建機(jī)器學(xué)習(xí)模型以使用腫瘤信息來預(yù)測(cè)腫瘤是惡性的還是良性的。我們將使用函數(shù)來確定機(jī)器學(xué)習(xí)分類器的準(zhǔn)確性。您已成功構(gòu)建了第一臺(tái)機(jī)器學(xué)習(xí)分類器?,F(xiàn)在,您可以使用在中加載數(shù)據(jù)組織數(shù)據(jù)訓(xùn)練預(yù)測(cè)和評(píng)估機(jī)器學(xué)習(xí)分類器。 歡迎大家前往騰訊云+社區(qū),獲取更多騰訊海量技術(shù)實(shí)踐干貨哦~ 本文由信姜緣 發(fā)表于云+社區(qū)專欄 介紹 機(jī)器學(xué)習(xí)是計(jì)算機(jī)科學(xué)、人工智能和統(tǒng)計(jì)學(xué)的研究領(lǐng)域。機(jī)器學(xué)...
摘要:環(huán)境的安裝本文章屬于爬蟲入門到精通系統(tǒng)教程第二講的安裝我用的是,也用過但是電腦配置不行,比較卡安裝教程在這寫的蠻清楚的然后安裝一個(gè)的插件就行見如下截圖點(diǎn)擊數(shù)字的地方在數(shù)字的地方輸入點(diǎn)擊右邊的安裝按鈕包的安裝配置源,不配置的話下載速度很慢在當(dāng) 環(huán)境的安裝 本文章屬于爬蟲入門到精通系統(tǒng)教程第二講 IDE的安裝 IDE我用的是VS code,也用過pycharm(但是電腦配置不行,比較卡) ...
這是我參與11月更文挑戰(zhàn)的第13天。今天給大家分享的這篇文章是19年寫的,當(dāng)時(shí)pyecharts作者陳老師和我分享了他們最新開發(fā)的動(dòng)漫風(fēng)格可視化庫(kù):cutecharts,我當(dāng)即體驗(yàn)了下,效果確實(shí)杠杠的,可愛 好看 精煉,今天回顧了下,所有代碼依舊能跑通(在Python 3.10上,19年寫的時(shí)候環(huán)境應(yīng)該是在Python3.7)。如果本文,或者歷史發(fā)布文章對(duì)你學(xué)習(xí)有所幫助,請(qǐng)給我一個(gè)免費(fèi)的點(diǎn)贊;如果...
閱讀 1342·2023-04-26 00:10
閱讀 2437·2021-09-22 15:38
閱讀 3801·2021-09-22 15:13
閱讀 3518·2019-08-30 13:11
閱讀 655·2019-08-30 11:01
閱讀 3040·2019-08-29 14:20
閱讀 3219·2019-08-29 13:27
閱讀 1733·2019-08-29 11:33