JupyterLab调试器是否可用于Jupyter Notebook?是否必须切换到JupyterLab?
关于Jupyter调试器的问题解答
问题1:JupyterLab的debugger是否支持在Jupyter Notebook中使用
JupyterLab官方原生的debugger是专门针对JupyterLab的前端扩展体系开发的,不能直接在经典Jupyter Notebook(执行jupyter notebook启动的默认界面)中使用。
问题2:在jupyter notebook运行环境使用调试器的配置方案
你不需要强制切换到完整的JupyterLab界面,可根据自己的使用习惯选择以下两种方案:
- 方案1:经典Notebook环境安装专用调试扩展
该扩展底层复用了JupyterLab debugger的内核调试逻辑,仅做了经典Notebook前端的适配,操作逻辑和JupyterLab debugger完全一致,安装配置步骤如下:- 升级pip到最新版本:
pip install --upgrade pip - 安装调试扩展包:
pip install jupyter-debugger-notebook - 执行扩展启用命令:
jupyter nbextension enable --py --sys-prefix jupyter_debugger_notebook - 重启
jupyter notebook服务后,顶部工具栏会新增调试控件,即可正常设置断点、单步执行、查看变量。
- 升级pip到最新版本:
- 方案2:使用官方维护的NBClassic界面
NBClassic是Jupyter官方推出的、保留经典Notebook全部交互习惯的轻量界面,底层基于JupyterLab的架构开发,原生支持debugger功能,无需额外配置调试扩展,安装使用步骤:- 安装NBClassic:
pip install nbclassic - 启动时执行命令
jupyter nbclassic即可打开和经典Notebook完全一致的界面,直接使用原生debugger功能。
- 安装NBClassic:
注意:以上两种方案都需要你的运行内核支持调试协议,常用的CPython内核需要搭配xeus-python使用,如果你默认内核无法触发调试,可以执行pip install xeus-python安装适配内核,新建Notebook时选择Xeus Python内核即可。
如果你可以接受切换到JupyterLab的交互逻辑,直接使用JupyterLab自带的debugger是功能最完整、兼容性最好的选择。
内容的提问来源于stack exchange,提问作者user357269
相关产品推荐
相关产品推荐

