那些在線的Jupyter

Jupyter

如果你是python的初學(xué)者, 非常推薦Jupyter.

Juypter是一個(gè)交互式的編程環(huán)境, 號稱

The Notebook has support for over 40 programming languages, 
including Python, R, Julia, and Scala.

支持超過40種語言, 其中包括Python, R, Julia和Scala. 雖然除了Python, 目前提到的其他語言我還都不會(huì), 但是看起來是很強(qiáng)大很有前途的樣子.

Jupyter的編程環(huán)境我很喜歡, 你可以寫一段markdown圖文并茂的說明, 再寫一段代碼, 然后單獨(dú)運(yùn)行剛剛寫過的這一段代碼, 看到結(jié)果, 調(diào)試代碼, 改好以后再進(jìn)行下一段.

最終完成的文本+代碼, 是所謂的"文學(xué)編程", 文字甚至圖片說明作者的思路, 中間夾雜著代碼, 來教導(dǎo)計(jì)算機(jī)進(jìn)行操作. 這樣帶來了完美的可讀性.

!不要! 相信什么"代碼才是最好的注釋". 
那是穿格子襯衫背雙肩背半夜三點(diǎn)還在寫代碼的專職程序員才相信的東西. 

如果你不是一個(gè)每天必須寫代碼十幾個(gè)小時(shí)的專業(yè)程序員, 而是利用代碼去完成自己專業(yè)的特殊需求, 可能一個(gè)程序要間斷好多天才能寫完, 那么這種方式能夠幫你迅速找到前幾天的思路. 繼續(xù)完成之前的作品.

在本地安裝Jupyter(跳過吧, 別看)

Jupyter當(dāng)然可以安裝在本地, 安裝好Anaconda以后, 相對比較容易安裝jupyter了.

但如果你之前只在windows上安裝過商業(yè)軟件, 一路點(diǎn)next, 或者在mac上從dmg中把應(yīng)用程序直接拖動(dòng)到文件夾里就可以運(yùn)行. 那么安裝anaconda, jupyter, 以及在運(yùn)行jupyter時(shí)再安裝各種python的依賴包, 是非常痛苦的.

完全不建議新手進(jìn)行, 至于那些常年泡在linux里面已經(jīng) "久病成醫(yī) "的病友, 推薦你們試試.

在線的Jupyter

如果你是python的初學(xué)者, 非常推薦使用在線的Jupyter.

利用在線的Jupyter要輕松得多, 只需要有網(wǎng)絡(luò)連接, 有瀏覽器就可以了. 我測試了mac版的Chrome, Safari, 甚至android上的Chrome和iOS上的Safari, Chrome, 都可以運(yùn)行在線的Jupyter.

目前已經(jīng)有這些服務(wù):

Cocalc

https://cocalc.com ,
這是一個(gè)科學(xué)計(jì)算平臺(tái), 除了提供jupyter, 還提供了sagemath.
sagemath也是一個(gè)強(qiáng)大的數(shù)學(xué)計(jì)算工具, 可以當(dāng)作一個(gè)開源的mathematica, 隨手解個(gè)方程, 求個(gè)微分之列都很方便.

CoCalc已經(jīng)安裝好了大量的python包, 比如numpy, tensorflow, keras, pytorch. . .

Cocalc有免費(fèi)版和付費(fèi)版, 免費(fèi)版沒有額外的網(wǎng)絡(luò)連接, 也就是說你無法在cocalc里面再訪問其他網(wǎng)頁, 比如你用jupyter寫了一個(gè)網(wǎng)絡(luò)服務(wù)程序, 那么是無法用在cocalc免費(fèi)版里面的. 用git也會(huì)受限制. 沒有網(wǎng)絡(luò)連接最麻煩的是如果cocalc沒有預(yù)裝的包, 你是無法自行安裝的. 不過如果確實(shí)是很常用有名的python包, 那么可以向cocalc網(wǎng)站的支持發(fā)個(gè)email, 他們的響應(yīng)速度超級快, 很有可能就幫你裝好了.

我寫過CoCalc的使用教程

Azure notebook

https://notebooks.azure.com
這是微軟提供的在線jupyter服務(wù), 財(cái)大氣粗的微軟提供的內(nèi)存, cpu, 存儲(chǔ)空間都不錯(cuò).

很有特色的功能有二:

  1. 方便一鍵clone, 看好其他人的做得不錯(cuò)的東西, 可以方便clone一份自己研究.
  2. 可以從github導(dǎo)入, 只需要將看中的github repo頁面添加, 就可以自動(dòng)clone, 如果對方更新了, 自己這邊也可以方便使用git pull

微軟的這個(gè)服務(wù)是有網(wǎng)絡(luò)連接的, 你可以遠(yuǎn)程下載數(shù)據(jù)或者導(dǎo)入其他的庫. 因此如果出現(xiàn)沒有預(yù)裝的庫, 可以自己手動(dòng)安裝. 但麻煩的是, 如果你的notebook停用1小時(shí)以后, 遠(yuǎn)程的server就會(huì)停止, 然后你之前安裝的東西就會(huì)被清除(數(shù)據(jù)和文件不會(huì)), 所以如果有額外的庫, 就需要在每次打開的時(shí)候預(yù)先再次安裝一遍.

好在會(huì)有腳本可以做, 你可以參照這個(gè)帖子

到你的 library > settings > Environment
選擇 ShellScript 然后選擇 特定的腳本
保存
重啟 server

安裝pytorch的腳本例子:

export PATH=~/anaconda3_410/bin:$PATH
conda install pytorch torchvision -c soumith --yes 

安裝其他的庫, 只需要在anaconda里面搜索一下conda的安裝方法, 然后替換上面腳本中的conda install pytorch那一段.

其他

  • Mybinder
    https://mybinder.org/
    這個(gè)我也還沒用過, 據(jù)說可以從github里面直接導(dǎo)入, 生成一個(gè)docker. 需要什么庫的話, 好像也可以通過腳本預(yù)先聲明, 不一定像azure notebook那樣要反復(fù)安裝.

  • Google Colaboratory
    https://colab.research.google.com/
    這是Google的jupyter服務(wù), 但目前還沒有完全開放, 點(diǎn)擊注冊以后會(huì)有"您已成功加入到候補(bǔ)名單责循。一旦 Colaboratory 可供您使用狸捕,我們會(huì)立即發(fā)送電子郵件通知您描睦。"

在移動(dòng)設(shè)備上使用

主流的手機(jī)/平板瀏覽器, 上面的服務(wù)都可以訪問, 編輯的時(shí)候稍微有點(diǎn)別扭, 特別是在小屏幕的時(shí)候, 操作也還是不夠方便, 但如果外接鍵盤/藍(lán)牙鍵盤也還是不錯(cuò)的.

除了內(nèi)置的瀏覽器, 我還發(fā)現(xiàn)了專用的iOS app, Juno 目前還處于testflight狀態(tài), 可以去他家網(wǎng)頁上申請beta測試. Juno中還內(nèi)置了Mybinder的demo. 如果你購買了cocalc付費(fèi)版, 也可以開放出一個(gè)遠(yuǎn)程的jupyter server供Juno使用.

自己建立Jupyter在線服務(wù)

開源社區(qū)現(xiàn)在越來越友好了, 有可能的話, 你也可以在自己的服務(wù)器或者VPS上建立一個(gè)在線的Jupyter服務(wù), 為自己/學(xué)生/客戶服務(wù). 但我這么怕麻煩的人, 本地電腦都懶得裝, 所以我都沒有測試過.

ps.
如果你在本地計(jì)算機(jī)上安裝了jupyter, 非常推薦下面這個(gè)插件, 能夠在保存jupyter文件的時(shí)候, 同時(shí)保存同名的 .html 和 .py 形式的文件. 這樣在其他的python程序中導(dǎo)入自己寫的函數(shù)會(huì)非常方便. 也很容易在github page上發(fā)布文檔.

http://protips.maxmasnick.com/ipython-notebooks-automatically-export-py-and-html
EOF()

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胚膊,更是在濱河造成了極大的恐慌豺撑,老刑警劉巖娃循,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件朴肺,死亡現(xiàn)場離奇詭異窖剑,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)戈稿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門西土,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鞍盗,你說我怎么就攤上這事需了。” “怎么了般甲?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵肋乍,是天一觀的道長。 經(jīng)常有香客問我敷存,道長墓造,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任锚烦,我火速辦了婚禮觅闽,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘涮俄。我一直安慰自己蛉拙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布禽拔。 她就那樣靜靜地躺著刘离,像睡著了一般。 火紅的嫁衣襯著肌膚如雪睹栖。 梳的紋絲不亂的頭發(fā)上硫惕,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機(jī)與錄音野来,去河邊找鬼恼除。 笑死,一個(gè)胖子當(dāng)著我的面吹牛曼氛,可吹牛的內(nèi)容都是我干的豁辉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼舀患,長吁一口氣:“原來是場噩夢啊……” “哼徽级!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起聊浅,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤餐抢,失蹤者是張志新(化名)和其女友劉穎现使,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體旷痕,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡碳锈,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了欺抗。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片售碳。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖绞呈,靈堂內(nèi)的尸體忽然破棺而出贸人,到底是詐尸還是另有隱情,我是刑警寧澤报强,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布灸姊,位于F島的核電站,受9級特大地震影響秉溉,放射性物質(zhì)發(fā)生泄漏力惯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一召嘶、第九天 我趴在偏房一處隱蔽的房頂上張望父晶。 院中可真熱鬧,春花似錦弄跌、人聲如沸甲喝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽埠胖。三九已至,卻和暖如春淳玩,著一層夾襖步出監(jiān)牢的瞬間直撤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工蜕着, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留谋竖,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓承匣,卻偏偏與公主長得像蓖乘,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子韧骗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容