我对Jupyter Notebook是新的,Jupyter Notebook和JupyterLab之间的关键区别是什么,建议我选择最好的一个,应该在未来使用。


当前回答

Jupyter Notebook是一个基于web的交互式计算环境,用于创建Jupyter Notebook文档。它支持多种语言,如Python (IPython)、Julia、R等,主要用于数据分析、数据可视化和进一步的交互式、探索性计算。

JupyterLab是包括笔记本电脑在内的下一代用户界面。它有一个模块化的结构,在那里你可以打开几个笔记本或文件(如HTML,文本,Markdowns等)作为标签在同一个窗口。它提供了更多类似于ide的体验。

对于初学者,我建议从Jupyter Notebook开始,因为它只包含一个文件浏览器和一个(笔记本)编辑器视图。它可能更容易使用。 如果您想要更多的特性,请切换到JupyterLab。JupyterLab提供了更多的功能和增强的界面,可以通过扩展进行扩展: JupyterLab Extensions (GitHub)

其他回答

在这个时候(2019年年中),随着JupyterLab 1.0的发布,作为用户,我认为我们应该采用JupyterLab进行日常使用。在JupyterLab的官方文档中:

JupyterLab的当前版本适合一般日常使用。

and

JupyterLab最终将取代经典的Jupyter Notebook。在整个过渡过程中,经典notebook和JupyterLab都将支持相同的notebook文档格式。


注意,JupyterLab具有可扩展的模块化体系结构。所以在过去,只有一个Jupyter Notebook,而现在有了JupyterLab(以及未来),Notebook只是JupyterLab的核心应用程序之一(以及其他像代码控制台、命令行终端和文本编辑器)。

(我和Julia一起使用JupyterLab)

首先,我之前使用的Jupyter实验室提供了更多的“主题”,这对眼睛来说很棒,而且字体大小的变化独立于浏览器,所以这使它更接近IDE。有一些细节我喜欢,如改变“代码字体大小”和保持界面字体大小不变。

最主要的特点是

单元格的拖放,以便您可以轻松地重新排列代码 只需单击鼠标就可以折叠单元格,并添加一个小标记来提醒它们的位置

最重要的是能够分离标签和终端的视图。如果您使用Emacs,那么您可能喜欢使用多个具有水平和垂直排列的缓冲区,其中一个缓冲区运行一个shell(终端),而在jupyterlab中可以做到这一点,并且这种排列是通过拖放完成的,而在Emacs中通常是通过命令集完成的。

(我不相信那些没有首先使用“笔记本”原始版本的人会有一个学习曲线。你可以直接进入这个IDE体验)

Jupyter Notebook是一个基于web的交互式计算环境,用于创建Jupyter Notebook文档。它支持多种语言,如Python (IPython)、Julia、R等,主要用于数据分析、数据可视化和进一步的交互式、探索性计算。

JupyterLab是包括笔记本电脑在内的下一代用户界面。它有一个模块化的结构,在那里你可以打开几个笔记本或文件(如HTML,文本,Markdowns等)作为标签在同一个窗口。它提供了更多类似于ide的体验。

对于初学者,我建议从Jupyter Notebook开始,因为它只包含一个文件浏览器和一个(笔记本)编辑器视图。它可能更容易使用。 如果您想要更多的特性,请切换到JupyterLab。JupyterLab提供了更多的功能和增强的界面,可以通过扩展进行扩展: JupyterLab Extensions (GitHub)

1 -直接回答你的问题:

两者之间最重要的区别是,您应该立即开始使用JupyterLab,而不必担心Jupyter Notebook。因为:

JupyterLab最终将取代经典的Jupyter Notebook。 在整个过渡过程中,笔记本文档格式将保持不变 由经典的Notebook和JupyterLab支持

从3.0版开始,JupyterLab还提供了一个可视化调试器,可以交互式地设置断点、进入函数和检查变量。

2 -为了反驳评论中的许多说法,这些说法在JLab中并不适用:

JupyterLab是一个非常棒的工具,既可以构建plot数字,也可以在浏览器中作为标签和外部启动完整的Dash应用程序。

3 -你可能还想知道这个:

其他帖子建议,对于初学者来说,Jupyter Notebook (JN)可能比JupyterLab (JL)更容易使用。但我不同意。

JL的一个巨大优势,可以说是JL和JN之间最重要的区别之一,是您可以更容易地运行单行甚至高亮显示的文本。我更喜欢使用键盘快捷键,而且分配快捷键非常直接。

事实上,您可以在Python控制台中执行代码,这使得使用JL变得更加有趣。其他答案已经提到了这一点,但是JL在某些方面可以被认为是运行notebook等的工具。所以我使用JupyterLab的方式是通过一个。ipynb文件,一个文件浏览器和一个像这样的python控制台来设置它:

现在你可以使用这些工具:

查看文件,运行内核,命令,笔记本工具,打开标签或扩展管理器 使用Ctrl+Enter等选项运行单元格 使用菜单选项或键盘快捷键运行单个表达式、行或突出显示的文本 使用Shift+Enter直接在控制台中运行代码 检查变量,数据帧或图快速,轻松地在一个控制台,而不混乱你的笔记本输出。

如果您正在寻找JupyterLab笔记本具有的传统Jupyter笔记本所没有的功能,请查看JupyterLab笔记本文档。在文档链接中有一个简单的视频展示了如何使用每个功能。

JupyterLab笔记本电脑有以下功能和更多:

拖放单元格以重新排列您的笔记本 在笔记本之间拖动单元格以快速复制内容(因为一次可以打开多个) 为一个笔记本创建多个同步视图 主题和自定义:深色主题和增加代码字体大小