日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

新编辑神器,可以在终端运行 Jupyter Notebook 了!

發布時間:2024/9/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 新编辑神器,可以在终端运行 Jupyter Notebook 了! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在我初學Python的時候,一直慣用著安裝式的編輯器軟件,比如PyCharm和Spyder。并且,一直以為編輯器都是這種形式的,有的區別只是體驗和功能上的差異。

直到我后來遇到了Jupyter Notebook,發現它是基于web來運行代碼的,并且可以還寫markdown的文本,直接打破我對編輯器的認識。

然而,最近又發現了一個新的Jupyter Notebook工具,再次打破我的認識。使用它可以不用在web敲代碼了,它可以讓我們在終端命令行使用Jupyter Notebook

web和終端對比

更神奇的是,它也支持代碼交互和markdown的富文本。雖然代碼在哪敲都是敲,并沒有改變本質,但真沒想到基于web的Jupyter Notebook有一天還可以在命令行中運行,和大家分享一下,說不定哪天能用上。

這個工具就是 nbterm,下面來介紹下。

GitHub鏈接:https://github.com/davidbrochart/nbterm

nbterm的使用姿勢

1. 安裝

支持各種軟件管理包的下載。

$?pip?install?nbterm

或者conda

$?mamba?install?nbterm?-c?conda-forge

除此外,還需要一個內核,比如適用于Python的ipykernel或xeus-python,適用于C++的xeus-cling。

2. 啟動notebook

$?cd?~/nbterm?#你的nbterm存儲路徑 $?nbterm?my_notebook.ipynb

然后使用終端來敲代碼:

3. nbterm基本命令

輸入help可以看到nbterm命令的其它命令選項。

$?nbterm?--help Usage:?nbterm?[OPTIONS]?[NOTEBOOK_PATH]Arguments:[NOTEBOOK_PATH]??Path?to?the?notebook.??[default:?]Options:--no-kernel?????????????????????Don't?launch?a?kernel.--run???????????????????????????Run?the?notebook.--save-path?TEXT????????????????Path?to?save?the?notebook.--version???????????????????????Show?the?version?and?exit.--help??????????????????????????Show?this?message?and?exit.

比如,在批處理模式中運行notebook所有單元。

$?nbterm?--run?my_notebook.ipynb

如果未使用--save-path指定新名稱,則會自動生成名為my_notebook_run.ipynb的新文檔。

嵌入式用法

除了上面那樣操作以外,也可把nbterm當作庫嵌入到自己的程序中,所有協作者都可以進行編輯。比如你可以重新排列單元格,然后一起運行:

import?asyncio from?nbterm?import?Notebook nb?=?Notebook("my_notebook.ipynb") nb.cut_cell(3) nb.paste_cell(1) asyncio.run(nb.run_all()) nb.save()

一個輕量級Jupyter的嘗試

這個工具的創作者叫David Brochart,是一位任職于quantstack的軟件開發員,致力于Jupyter生態庫的開發,比如nbclient、jupyter-client、ipykernel、ipywidgets等。

他本人提到,nbterm不會重用Jupyter的基本組件,如jupyter-client和nbformat,而是想要嘗試不涉及向后兼容限制的新項目,或者說測試一下開發一個輕量notebook客戶端的難度,所以現在的nbterm還是一個相當精簡的代碼庫。

顯然,nbterm對于notebook而言還是有一些功能需要完善的,比如終端雖然只限制于顯示字符。不過ASCII碼可以使這個問題迎刃而解。

大佬已經使用ASCII后端對matplotlib圖形庫嘗試了繪制:

但這個繪制目前還只能在MacOS上使用。

除此之外,該項目也提出了要添加一些類似ipywidgets的交互功能,以及更多簡單的滑塊、按鈕、菜單等GUI部件等。

這個工具雖然目前來看可用性不強,但也確實是一個啟發。就像我當時覺得web敲代碼很奇怪一樣,隨著逐漸熟悉也就習慣了,只要它香我在哪敲都行,命令行里敲還能順便裝一下

參考鏈接:?

[1] https://github.com/davidbrochart/nbterm?

[2] https://blog.jupyter.org/nbterm-jupyter-notebooks-in-the-terminal-6a2b55d08b70

推薦閱讀

Pandas處理數據太慢,來試試Polars吧!

懶人必備!只需一行代碼,就能導入所有的Python庫

絕!關于pip的15個使用小技巧

介紹10個常用的Python內置函數,99.99%的人都在用!

可能是全網最完整的 Python 操作 Excel庫總結!

總結

以上是生活随笔為你收集整理的新编辑神器,可以在终端运行 Jupyter Notebook 了!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。