Jupyter Notebook已出现“返祖现象”,这款工具让你在终端里使用它

菜鸟学Python

共 2202字,需浏览 5分钟

 ·

2021-05-17 06:14

博雯 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

Jupyter Notebook,一般都是在网页上使用,可是你想过它有一天也可以在命令行中运行吗?

这就是用于终端的Jupyter Notebook工具nbterm

正在使用Jupyter Notebook又更习惯终端编辑的开发者们,一起来看看这款轻便的工具吧。

开始使用nbterm

安装

你可以使用任何你喜欢的软件包管理器来下载它:

$ pip install nbterm

$ mamba install nbterm -c conda-forge

运行一个已存在的Jupyter Notebook文档

$ cd ~/nbterm #你的nbterm存储路径
$ nbterm my_notebook.ipynb

然后使用终端来进行开发:

基本命令

输入help以得到帮助:

$ nbterm —help

在批处理模式中运行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()

产品持续开发中

这是一款目前正在开发中的软件,作者David Brochart是一位任职于quantstack的软件开发员,致力于Jupyter生态库的开发,比如nbclient、jupyter-client、ipykernel、ipywidgets等。

而对于这款软件,David Brochart也提到,nbterm不会重用Jupyter的基本组件,如jupyter-client和nbformat。

因为作为一名参与Jupyter软件包的维护的贡献者,他想要尝试不涉及向后兼容限制的新项目,或者说测试一下开发一个轻量notebook客户端的难度,这就导致nbterm相当精简的代码库。

不过现在,他也有了一些关于nbterm未来的构想:比如尝试增加其输出方式。

终端虽然只限制于显示字符,但ASCII码可以使这个问题迎刃而解。

David在前段时间已经使用ASCII后端对matplotlib图形库尝试了绘制:

目前只能在MacOS上使用。

除此之外,David也提出了要添加一些类似ipywidgets的交互功能,以及更多简单的滑块、按钮、菜单等GUI部件。

参考链接:
[1]https://twitter.com/davidbrochart?s=20

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



推荐阅读:

入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径


干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |


趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!


AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影


年度爆款文案


点阅读原文,领廖雪峰视频资料!

浏览 11
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报