如何在 Python 中使用 pdb 进行交互式调试

2023-04-13 00:00:00 python 调试 如何在

Python 中内置了一个交互式调试工具 pdb(Python Debugger),使用 pdb 可以快速定位代码中的问题。在使用 pdb 进行交互式调试时,可以设置断点、查看变量、执行代码、跟踪函数调用等操作。

下面是一个简单的例子,使用 pdb 对一个字符串进行操作:

s = 'pidancode.com'
n = len(s)

# 打印字符串长度
print(n)

# 将字符串转换为小写
s = s.lower()

# 打印转换后的字符串
print(s)

为了使用 pdb 进行调试,需要在代码中添加调试命令 import pdb; pdb.set_trace(),例如:

import pdb

s = 'pidancode.com'
n = len(s)

# 打印字符串长度
print(n)

# 将字符串转换为小写
pdb.set_trace()  # 设置断点
s = s.lower()

# 打印转换后的字符串
print(s)

在执行到 pdb.set_trace() 时会暂停程序执行,并进入 pdb 调试模式。此时可以使用 pdb 的命令对程序进行调试,例如:

  • n(ext):执行下一行代码
  • s(tep):进入子函数
  • c(ontinue):从断点处继续执行代码
  • r(eturn):执行到函数返回语句
  • l(ist):显示当前代码行及周围代码
  • p(rint):打印变量值
  • a(rgs):显示当前函数的参数列表
  • h(elp):查看命令帮助信息
  • q(uit):退出调试模式

可以根据需要在 pdb 中执行相应的命令,找出问题所在。例如,可以使用 p s 命令打印字符串变量 s 的值,查看是否被正确转换。如果发现问题,可以使用 q 命令退出 pdb 调试模式,然后修改代码并重新运行调试。

相关文章