#Python 的内置函数 breakpoint
说明:设置断点。
#函数说明
def breakpoint():
'''
调用位置进入调试器
'''
说明
用于设置断点,在调用位置会进入调试器。当程序执行到 breakpoint()
时,会调用 sys.breakpointhook()
。
默认情况下会启动 pdb
调试器(Python 标准库中的调试器)。
可以通过设置 PYTHONBREAKPOINT
环境变量来改变调试器行为:
PYTHONBREAKPOINT=0
禁用所有断点PYTHONBREAKPOINT=pudb.set_trace
使用 PUDB 调试器
参数
无
返回值
无
#示例
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
- 列出当前函数的所有源代码