【问题标题】:Python debugging and breakpointPython调试和断点
【发布时间】:2022-01-09 07:32:45
【问题描述】:

我通常使用 Matlab 来处理结果。但是我现在需要使用 Python。我想在 Python Jupyter 笔记本中设置一个断点来遍历函数。我能够设置断点,但实际上我不能用这个断点逐行调试。在 Matlab 中,我曾经按 F10 来执行此操作。

【问题讨论】:

    标签: python jupyter-notebook breakpoints


    【解决方案1】:

    在带有 Xeus Python 内核的 JupyterLab 中(在选择内核时通常标记为“XPython”),您可以使用可视化调试器。 run-next-line 功能是调试器面板的“CALLSTACK”窗格中的“Next”按钮。有关悬停时的“下一步”工具提示,请参阅 the animation here。而且,虽然该动画中没有显示,但工具提示实际上目前在我的浏览器中显示 'Next (F10)'

    您可以通过clicking here 尝试。启动的会话从打开的笔记本开始,其中包含很好的功能介绍和指南。

    更多关于可视化调试器here的信息。


    当前的“默认”通过 MyBinder 启动,Xeus Python 内核和调试器已经可用。您可以在任何这些会话的单元格中运行以下代码,以拉入调试器演示笔记本。

    !curl -o debugger.ipynb https://raw.githubusercontent.com/jupyterlab/debugger/dfd6bf9d51a7a0cd78ca54f4173fcf527bd4d7fd/examples/index.ipynb
    

    当您打开它时,您会发现,该笔记本还设置为触发打开,并选择了调试所需的正确内核。请注意,它并不总是您开始新笔记本时的首选。

    【讨论】:

    • 非常感谢您。我没有使用 jupyterlab 而不是 jupyter notebook
    • 要获得您询问的功能,例如拥有 F10 键,您可以单击以运行下一行,(目前)您需要使用现代 JupyterLab 界面。诸如此类的能力或开发它的原因。在未来几年,经典界面实际上将具有相同的技术底层,请参阅here。现在您可能想尝试使用 pdb 模块,使用 step 命令,请参阅 docs.python.org/3/library/pdb.htmltowardsdatascience.com/…
    猜你喜欢
    • 2017-07-11
    • 2011-01-20
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多