当前位置: 首页 > 科技观察

JupyterLab的十大有用技巧

时间:2023-03-14 17:45:55 科技观察

JupyterLab是JupyterNotebook的“新”界面。包含了jupyternotebook的所有功能,并且升级后增加了很多功能。它最大的更新是模块化的界面,可以在同一个窗口中以标签的形式同时打开多个文档。同时,插件管理非常强大,比jupyternotebook高大上很多。1.拼写检查拼写检查可以使我们的文档保持更高的质量。默认情况下,拼错的单词会用红色背景高亮显示,但这里我设置为下划线。要使用这个功能,只需要安装以下插件:pipinstalljupyterlab-spellchecker2,代码格式化这里需要安装几个包,一个是提供格式化功能,另一个是我们的jupyterlab插件#Install格式化程序$pipinstallblackisort#安装扩展程序$pipinstalljupyterlab-code-formatter您可以通过JupyterLabCodeFormatter扩展程序获得很多格式化功能。安装后,顶部会出现一个奇怪但看起来很酷的图标。如果您不想使用此按钮,您可以将扩展配置为在保存时自动格式化(在高级设置编辑器中设置)。3.多行选择这个功能和jupyternotebook一样,点击的时候按住Ctrl键可以选择多行。只能在单个单元格内进行多项选择。4.添加虚拟环境使用以下命令将虚拟环境作为内核添加到JupyterLab,这样它就可以作为选项出现在Launcher或内核列表的右上角:$pipinstallipykernel$ipythonkernelinstall--user--name=new_or_existing_env_name注意:以上代码需要在你需要添加的虚拟环境中使用,而不是jupyterlab环境。5.像脚本一样运行笔记本Jupyter笔记本,进行探索和交互输出。但是使用jupyterrun命令,每个笔记本单元都可以像Python脚本一样顺序执行。jupyterrunpath_to_notebook.ipynb这个命令会以JSON的形式返回每个单元格的输出,所以如果文本输出很多,可能会卡顿。我们可以将不同的超参数保存到一个笔记本中并运行它,它会保留运行记录。6.拆分编辑器窗口JupyterLab的窗口以选项卡的形式显示。我们可以一次打开多个编辑窗口,我们可以拖动窗口来分割编辑窗口。演示如下:7、随时查看文档的三种方式。直接从编辑器中查找几乎所有函数或魔术命令的文档。第一种是使用Shift+Tab键盘快捷键(默认),它会显示一个弹出窗口,其中包含光标所在的函数或类的文档:如果您不喜欢在单击其他地方时弹出窗口消失,您也可以使用上下文帮助,可以通过帮助菜单或Ctrl+I键盘快捷键访问。上下文帮助显示光标指向的函数或类的实时文档。最后,一种方法是在函数或类名的末尾添加一个问号(不带括号):8.混合使用终端命令和Python代码此功能可能看起来有点奇怪,但它非常有用。使用感叹号(!),您可以在代码单元中运行任何终端命令。也可以将这些命令的输出存储在Python变量中。例如,使用!pwd的输出将当前工作目录存储在路径变量中:path=!pwd这是一个更实际的示例。假设您有一个数据文件夹,其中包含用于模型训练的图像。所有图像都根据类别分类。问题是图像的类别太多了,我们无法手动计算它们。需要一种快速的方法来计算data/raw/train中目录的数量并将其输出存储在number_of_classes中:number_of_classes=!ls-1data/raw/train|wc-l>>>print(number_of_classes)43一个shell命令就可以解决问题,所以我们不需要写python目录遍历代码9.通知执行即使你不是GoogleColab的用户,你也一定会喜欢它的单元格执行通知。使用winsound内置的Python库,可以在JupyterLab上模仿这个功能:importwinsound#Createabeep,持续5秒duration=5000frequency=440winsound.Beep(frequency,duration)10.自动重新加载修改后的Python脚本到将脚本与笔记本混合是非常糟糕的,但有时我们确实需要这样做,如果我们更新导入的脚本,除非我们重新启动内核,否则Jupyter不会自动检测到更改,这会产生很多问题。所以我们可以使用autoreload命令来避免这个问题:%load_extautoreload%autoreload1上面的代码会每秒检测并刷新内核。它不仅会检测脚本更改,还会检测所有文件的更改。对于python脚本,我们还可以使用pycat命令,以语法高亮的形式显示Python脚本的内容:对于其他文件格式,我们也可以使用cat命令,这是linux的标准命令总结本文介绍几个常用的好用的如果想了解更多的magic命令,可以运行lsmagic。它将列出所有内联和单元格魔术命令。