Jupyter Lab 的 10 个有用技巧

简介: JupyterLab是 Jupyter Notebook「新」界面。它包含了jupyter notebook的所有功能,并升级增加了很多功能。它最大的更新是模块化的界面,可以在同一个窗口以标签的形式同时打开好几个文档,同时插件管理非常强大,使用起来要比jupyter notebook高大尚许多。

1、拼写检查

拼写检查可以让我们的文档保持更高的质量,默认情况下,拼错的单词会以红色背景突出显示,但是这里我将其设置为下划线。

使用这个功能只要安装以下的插件:

pip install jupyterlab-spellchecker

2、代码格式化

这里需要安装几个包,一个是提供格式化功能,另外一个是我们的jupyterlab插件

# Install the formatters
$ pip install black isort
# Install the extension
$ pip install jupyterlab-code-formatter

通过Jupyter Lab Code Formatter扩展可以获得很多的格式化功能

安装完成后,顶部会出现一个奇怪但看起来很酷的图标。如果您不想使用该按钮,您可以将扩展配置为保存时自动格式化(在 Advanced Settings Editor 设置)。

3、多行选择

这个功能与jupyter notebook一样,点击时按住Ctrl键可以多选。只能在单个单元格内进行多选。

4、添加虚拟环境

使用以下命令将虚拟环境作为内核添加到Jupyter Lab,这样就可以作为一个选项出现在Launcher或内核列表的右上角:

$ pip install ipykernel
$ ipython kernel install --user --name=new_or_existing_env_name

注意:以上代码需要在你需要添加的虚拟环境使用,而不是jupyter lab的环境

5、像运行脚本一样运行notebook

Jupyter notebook用于探索和互动输出。但是使用jupyter run命令,可以像Python脚本一样顺序执行每个笔记本单元格。

jupyter run path_to_notebook.ipynb

该命令会以JSON的形式返回每个单元格的输出,所以如果有大量文本输出可能会卡顿。我们可以将不同的超参数保存到单个笔记本中然后运行,这样可以保存运行记录。

6、分割编辑器窗口

Jupyter Lab的窗口以标签的形式展示,我们一次可以打开好几个编辑窗口,并且可以拖动窗口,将编辑器窗口分割,演示如下:

7、随时查看文档

有三种方法可以直接从编辑器中查找几乎任何函数或魔法命令的文档。

第一个是使用Shift + Tab键盘快捷键(默认),它会显示一个弹出窗口,其中包含光标所在的函数或类的文档:

如果不喜欢点击其他地方后弹出窗口消失,还可以使用上下文帮助,它可以通过帮助菜单或Ctrl + I键盘快捷键访问。上下文帮助显示游标指向的函数或类的实时文档。

最后,一种方法可以简单地在函数或类名的末尾添加一个问号(不带括号):

8、终端命令和Python代码混合开发

这个功能看起来有点古怪,但它非常有用。使用感叹号(!),可以在代码单元格中运行任何终端命令。

还可以将这些命令的输出存储在Python变量中。例如使用!pwd的输出将当前工作目录存储在path变量中:

path = !pwd

这里有一个更实际的例子。假设有一个数据文件夹,其中包含用于模型训练的图像。所有图像都根据它们的类被分类到目录中。

问题是有太多的图像类别,我们无法手动计数。需要使用一个快速的方法来计算data/raw/train内部的目录数量,并将其输出存储在number_of_classes中:

number_of_classes = !ls -1 data/raw/train | wc -l

>>> print(number_of_classes)
43

一句shell命令就能解决问题,这样就不用我们写python的目录遍历代码了

9、通知执行

即使你不是谷歌Colab的用户,你也一定会喜欢它的单元格执行通知。使用winsound内置Python库,可以在Jupyter Lab上模仿该功能:

import winsound

# Create a beep that lasts five seconds
duration = 5000
frequency = 440

winsound.Beep(frequency, duration)

10、自动重载修改后的Python脚本

将脚本与笔记本混合使用是非常不好的,但是有时候我们的确需要这样做,如果我们更新了导入的脚本,除非重新启动内核,否则Jupyter将不会自动检测到更改,这会产生很多问题。所以我们可以使用autoreload 命令来避免这个问题:

%load_ext autoreload
%autoreload 1

上述代码将每秒钟检测并刷新一次内核。它不仅会检测脚本更改,还会检测对所有文件的更改。

对于python脚本,我们还可以使用pycat 命令来以语法高亮的形式显示Python脚本的内容:

对于其他文件格式,也可以使用cat命令,这是linux的标准命令

总结

本文介绍了几个常用且好用的jupyter技巧,如果你还想了解个更多的魔法命令,可以运行lsmagic。它将列出所有内联和单元格魔术命令。

https://avoid.overfit.cn/post/5f262543e01045cbab0aaafc5f6966c5

作者:BEXGBoost

目录
相关文章
|
Ubuntu JavaScript 开发工具
远程服务器ubuntu安装Jupyter Lab详细教程
远程服务器ubuntu安装Jupyter Lab详细教程
2184 0
Jupyter Notebook & Lab快捷键大全
Jupyter Notebook & Lab快捷键大全
570 3
|
数据可视化 JavaScript 定位技术
这款地图可视化神器终于支持新版jupyter lab了!
这款地图可视化神器终于支持新版jupyter lab了!
194 2
|
数据可视化 数据挖掘 定位技术
好用到飞起的12个jupyter lab插件
好用到飞起的12个jupyter lab插件
1028 1
|
JavaScript Python
不吹不黑,jupyter lab 3.0客观使用体验
不吹不黑,jupyter lab 3.0客观使用体验
454 0
|
JavaScript 前端开发 C++
jupyter lab最强代码提示插件来了
jupyter lab最强代码提示插件来了
1173 0
|
开发工具 git
Jupyter Lab操作文档
**Jupyter Lab 概览:**集成编辑器、终端和自定义组件的环境。可定制主题、显示行号、切换语言。使用时,了解界面布局,通过`Ctrl+Enter`运行代码,`Shift+Enter`前进,`Alt+Enter`新建行。利用Markdown写作,通过Terminal执行命令,用快捷键提升效率,如`a/b`增删单元格,`m/y`切换模式。文件上传下载可使用OBS或终端工具。
Jupyter Lab操作文档
|
数据可视化 开发工具 数据安全/隐私保护
python小知识-jupyter lab
Jupyter Lab 是一个基于网页的交互式开发环境,它支持 Jupyter Notebook、文本编辑器、终端、数据可视化以及其他自定义组件。它提供了一个灵活的用户界面,允许用户创建和共享包含实时代码、方程、可视化以及解释性文本的文档。【6月更文挑战第2天】
449 0
|
开发工具 数据安全/隐私保护 Python
在云服务器部署jupyter notebook及jupyter lab
在云服务器部署jupyter notebook及jupyter lab
|
缓存 Linux 数据安全/隐私保护
搭建c++ python jupyter lab 在线环境
搭建c++ python jupyter lab 在线环境
357 0