那些在線的Jupyter

Jupyter

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

Juypter是一個交互式的編程環境, 號稱

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

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

Jupyter的編程環境我很喜歡, 你可以寫一段markdown圖文并茂的說明, 再寫一段代碼, 然后單獨運行剛剛寫過的這一段代碼, 看到結果, 調試代碼, 改好以后再進行下一段.

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

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

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

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

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

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

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

在線的Jupyter

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

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

目前已經有這些服務:

Cocalc

https://cocalc.com ,
這是一個科學計算平臺, 除了提供jupyter, 還提供了sagemath.
sagemath也是一個強大的數學計算工具, 可以當作一個開源的mathematica, 隨手解個方程, 求個微分之列都很方便.

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

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

我寫過CoCalc的使用教程

Azure notebook

https://notebooks.azure.com
這是微軟提供的在線jupyter服務, 財大氣粗的微軟提供的內存, cpu, 存儲空間都不錯.

很有特色的功能有二:

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

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

好在會有腳本可以做, 你可以參照這個帖子

到你的 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/
    這個我也還沒用過, 據說可以從github里面直接導入, 生成一個docker. 需要什么庫的話, 好像也可以通過腳本預先聲明, 不一定像azure notebook那樣要反復安裝.

  • Google Colaboratory
    https://colab.research.google.com/
    這是Google的jupyter服務, 但目前還沒有完全開放, 點擊注冊以后會有"您已成功加入到候補名單。一旦 Colaboratory 可供您使用,我們會立即發送電子郵件通知您。"

在移動設備上使用

主流的手機/平板瀏覽器, 上面的服務都可以訪問, 編輯的時候稍微有點別扭, 特別是在小屏幕的時候, 操作也還是不夠方便, 但如果外接鍵盤/藍牙鍵盤也還是不錯的.

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

自己建立Jupyter在線服務

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

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

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

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,967評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,273評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,870評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,742評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,527評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,010評論 1 322
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,108評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,250評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,769評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,656評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,853評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,371評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,103評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,472評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,717評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,487評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,815評論 2 372

推薦閱讀更多精彩內容