# 一、两种Python Debug方法 ## 1. import pdb 本方法需要修改python脚本,不建议使用。 ```python import pdb x = "ff" pdb.set_trace() y = "yz" ``` 增加了“import pdb”和“pdb.set_trace() ”行,当运行到pdb.set_trace()时,pdb将中断,进入debug模式。 ## 2. pdb参数法 本方法无需修改脚本,运行脚本可以带参数。 ```bash [yz@test-4 yz]$ python -m pdb ~/bin/mytest start cluster -a > ~/bin/mytest(19)() -> try: (Pdb) ``` ## 3. 打印函数堆栈 ```python import traceback traceback.print_stack() ``` 如果想把信息输出到文件,则: ```python traceback.print_stack(file=open('/home/yz/log.txt', 'a')) ``` # 二、pdb使用基本方法 常用命令 | 命令 | 命令缩写 | 解释 | | -------- | -------- | -------------------------- | | break | b | 设置断点 | | continue | c | 继续执行程序 | | list | l | 查看当前行的代码段 | | step | s | 进入函数 | | return | r | 执行代码直到从当前函数返回 | | exit | q | 中止并退出 | | next | n | 执行下一行 | | print | p | 打印变量的值 | | help | | 帮助 | # 三、参考 - [pdb Document: The Python Debugger](https://docs.python.org/3/library/pdb.html) - [pdb中文文档:Python的调试器](https://docs.python.org/zh-cn/3/library/pdb.html)