国际访客建议访问 Primers 编程伙伴 国际版站点 > Python 教程 > breakpoint 以获得更好的体验。

# Python 的内置函数 breakpoint

请查看 Python 内建函数列表 了解更多相关 API。

说明:设置断点。

# 函数说明

def breakpoint():
    '''
    调用位置进入调试器
    '''

!subtitle:说明

用于设置断点,在调用位置会进入调试器。当程序执行到 breakpoint() 时,会调用 sys.breakpointhook()

默认情况下会启动 pdb 调试器(Python 标准库中的调试器)。

可以通过设置 PYTHONBREAKPOINT 环境变量来改变调试器行为:

  • PYTHONBREAKPOINT=0 禁用所有断点

  • PYTHONBREAKPOINT=pudb.set_trace 使用 PUDB 调试器

!subtitle:参数

!subtitle:返回值

# 示例

print('hello')
breakpoint()
print('world')

# 调试器的命令

# 执行控制

  • q(uit) - 退出调试器并终止程序

  • c(ontinue) - 继续执行直到遇到下一个断点

  • n(ext) - 执行当前行,停在下一行(不进入函数)

  • s(tep) - 执行当前行,进入被调用的函数

  • r(eturn) - 继续执行直到当前函数返回

  • unt(il) [行号] - 继续执行直到到达指定行号或当前函数返回

# 断点管理

  • b(reak) [文件名:]行号 - 在指定行设置断点

  • b(reak) 函数名 - 在函数入口设置断点

  • cl(ear) [中断编号] - 清除断点(不指定参数则清除所有)

  • tbreak [参数列表] - 设置临时断点(命中一次后自动删除)

  • disable [中断编号] - 禁用断点

  • enable [中断编号] - 启用断点

  • ignore 中断编号 [次数] - 忽略断点指定次数

# 代码导航

  • l(ist) [first[, last]] - 列出当前行周围的代码

  • ll - 列出当前函数或框架的所有代码

  • w(here) - 显示当前执行堆栈

  • u(p) - 向上移动一个堆栈帧

  • d(own) - 向下移动一个堆栈帧

  • a(rgs) - 显示当前函数的参数

# 变量检查

  • p 表达式 - 打印表达式的值

  • pp 表达式 - 漂亮打印表达式的值

  • whatis 参数 - 打印参数的类型

  • display [表达式] - 每次停止时自动显示表达式值

  • undisplay [表达式] - 停止显示表达式值

# 代码执行

  • ! 语句 - 执行 Python 语句(可省略感叹号)

  • run [参数列表] - 重启调试的程序(仅在 pdb 启动后可用)

  • restart [参数列表] - 同 run

# 变量操作

  • interact - 启动交互式解释器

  • debug code - 进入递归调试器调试代码

# 调试器配置

  • source 文件名 - 从文件执行 pdb 命令

  • commands [中断编号] - 设置断点命中时要执行的命令

  • j(ump) 行号 - 跳转到指定行号(改变执行流)

  • retval - 打印函数返回的值

# 其他

  • h(elp) - 显示帮助信息

  • alias [别名 [命令]] - 创建命令别名

  • unalias 别名 - 删除别名

  • condition 中断编号 表达式 - 设置条件断点

  • disable [中断编号] - 禁用断点

  • enable [中断编号] - 启用断点

  • longlist | ll - 列出当前函数的所有源代码

# 推荐阅读

本文 更新于: 2025-11-27 09:37:58 创建于: 2025-11-27 09:37:58