jupyter notebook魔法命令

news/2024/12/22 13:46:18/

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

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

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

      python">%xmode Plain
      
    • 切换回 Context 模式(默认,包含上下文信息):

      python">%xmode Context
      
    • 切换到 Verbose 模式(详细输出,包括更多调用栈信息):

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

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

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

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

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

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

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

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

    • listl:显示当前位置的源代码。
    • helph:显示所有可用的调试命令或特定命令的帮助信息。
    • quitq:退出调试器。
    • continuec:继续执行程序直到下一个断点或程序结束。
    • nextn:执行下一行代码,如果当前行是调用函数,则执行该函数但不会进入函数内部。
    • printp:打印变量的值。
    • steps:步入当前行的函数或方法内部。
    • returnr:从当前函数返回,继续执行调用者的代码。
  3. 自动启动调试器
    如果你希望在每次发生异常时自动启动调试器,可以使用 %pdb 魔法函数,并设置为 on

    python">%pdb on
    

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

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

    python">%run -d your_script.py
    

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

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

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


http://www.ppmy.cn/news/1506342.html

相关文章

服务器数据恢复—Raid故障导致存储中数据库数据丢失的数据恢复案例

服务器存储数据恢复环境&故障情况: 一台光纤存储中有一组由16块硬盘组成的raid。 该存储出现故障导致数据丢失。RAID中2块盘掉线,还有1块盘smart状态为“警告”。 服务器存储数据恢复过程: 1、通过该存储自带的存储管理软件将当前存储的完…

【C++ 面试 - 基础题】每日 3 题(四)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

C语言---指针数组和数组指针,函数指针

指针数组和数组指针 数组指针 指向数组的指针 作用:方便的操作数组中的各种数据 例: int* p arr; int (*p)[5] 指针数组 存放指针的数组 作用:用来存放多个指针 例: int *arr[5] int (*p)[5]和int *p[5]的…

【RN】实现markdown文本简单解析

需求 支持文本插入,比如 xxx {product_name} xxx ,如果提供了product_name变量的值为feedback,则可以渲染出 xxx feedback xxx。支持链接解析,比如 [baidu](https://www.baidu.com/),可以直接渲染成超链接的形式。支持…

分享中建海龙科技的代表性建筑案例

中建海龙科技作为一家在建筑行业颇具影响力的企业,以其独特的建筑理念和先进的施工技术,创造了许多令人瞩目的成功建筑案例。其中最具代表性的是北京桦皮厂胡同8号楼的“原拆原建”项目和深圳市华章新筑项目。 北京桦皮厂胡同8号楼的“原拆原建”项目&a…

24年电赛——自动行驶小车(H题)基于 CCS Theia -陀螺仪 JY60 代码移植到 MSPM0G3507(附代码)

前言 只要搞懂 M0 的代码结构和 CCS 的图形化配置方法,代码移植就会变的很简单。因为本次电赛的需要,正好陀螺仪部分代码的移植是我完成的。(末尾附全部代码) 一、JY60 陀螺仪 JY60特点 1.模块集成高精度的陀螺仪、加速度计&…

AI学习记录 - 如何进行token理论知识,以GPT2为举例

AI学习记录已经发了十几篇,大佬们可以看看,如果有帮助动动小手点赞 token入门版,有空会更新具体代码操作,能学到一点东西的话,大佬们点个赞!!! GPT4当中,我们提问问题是…

【Redis 进阶】哨兵 Sentinel(重点理解流程和原理)

Redis 的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工进行主从切换,同时大量的客户端需要被通知切换到新的主节点上,对于上了一定规模的应用来说,这种方案是无法接受的,于是 Redis 从 2.8 开始…