jupyter notebook魔法命令

%xmode 魔法命令来控制异常报告:

  1. 输入魔法命令:在 IPython 或 Jupyter Notebook 的一个新单元格中,输入以下命令之一来设置异常报告模式:

    • 切换到 Plain 模式(简洁输出):

      ipython 复制代码
      %xmode Plain
    • 切换回 Context 模式(默认,包含上下文信息):

      ipython 复制代码
      %xmode Context
    • 切换到 Verbose 模式(详细输出,包括更多调用栈信息):

      ipython 复制代码
      %xmode Verbose
  2. 执行命令 :运行含有 %xmode 的单元格。这不会立即产生输出,但会设置后续异常报告的模式。

  3. 运行你的代码 :在新的单元格中编写并运行你的 Python 代码。如果发生异常,异常报告将根据你设置的 %xmode 模式显示。

  4. 查看异常报告:当异常发生时,IPython 会根据当前设置的模式显示异常报告。你可以根据这些信息来调试你的代码。

  5. 调整模式(如果需要) :如果你发现当前的模式不适合你的需求,你可以再次使用 %xmode 命令来切换到不同的模式。

  6. 继续调试:使用异常报告中的信息来定位和修复代码中的错误。

%debug 魔法命令来启动一个交互式调试会话:

  1. 捕获异常后启动调试器 :

    当你的代码抛出异常时,你可以使用 %debug 魔法命令来启动调试器。例如,如果你的代码在执行时抛出了 ZeroDivisionError,你可以在异常发生后立即输入 %debug 来进入调试模式。

  2. 使用调试命令 :

    一旦进入调试模式,你可以使用各种调试命令来检查程序状态。以下是一些基本的调试命令:

    • list 或 l:显示当前位置的源代码。
    • help 或 h:显示所有可用的调试命令或特定命令的帮助信息。
    • quit 或 q:退出调试器。
    • continue 或 c:继续执行程序直到下一个断点或程序结束。
    • next 或 n:执行下一行代码,如果当前行是调用函数,则执行该函数但不会进入函数内部。
    • print 或 p:打印变量的值。
    • step 或 s:步入当前行的函数或方法内部。
    • return 或 r:从当前函数返回,继续执行调用者的代码。
  3. 自动启动调试器 :

    如果你希望在每次发生异常时自动启动调试器,可以使用 %pdb 魔法函数,并设置为 on:

    ipython 复制代码
    %pdb on

    这将导致每次异常发生时自动启动调试器。

  4. 运行脚本 :

    如果你有一个 Python 脚本,并希望在调试模式下运行它,可以使用 %run -d 命令:

    ipython 复制代码
    %run -d your_script.py

    这将以调试模式运行脚本,允许你单步执行代码。

  5. 查看调试器文档 :

    要获取更多关于 ipdb 的信息和高级调试技巧,你可以访问其 GitHub 页面(如果你之前提供的链接无法访问,可以尝试直接搜索 ipdb 的 GitHub 仓库)。

  6. 注意 :

    在 Windows 系统中,IPython 的调试体验与 Unix/Linux 系统相似。但是,文件路径和某些系统特定的命令可能有所不同,这可能会影响调试过程中的某些操作。

相关推荐
❁满城风絮*12 小时前
Claude Code 学习总结
python·agent·claude
维克兜率天14 小时前
【维克】复合型CTA:趋势+套利的双轮驱动
python·学习方法
伞伞悦读14 小时前
【第76期】两张3行表左连接变5行:主键、validate与未匹配排查完整教程
人工智能·python
用户83562907805115 小时前
使用 Python 在 Excel 中添加和自定义迷你图
后端·python
用户83562907805115 小时前
使用 Python 在 Excel 图表中添加趋势线与回归方程
后端·python
特立独行的猫A15 小时前
一份 Markdown 发十个平台:cspub 一稿多投
java·后端·python
深蓝AI15 小时前
HTTPX 超时 1 秒,接口为何还能跑 2.4 秒?
python
CyrusYiVPP16 小时前
哪个用户会再来买?RFM模型+plotly画出用户分层,数据分析实战第2期
人工智能·python
李帅51517 小时前
用 CPU 做发票识别:从 OCR 文本行到结构化明细表的 4 个硬骨头
python
happylifetree18 小时前
Python79:核心语法-面向对象基础-实例方法
python