目录
suibi

python调试程序的方法(python调试运行语句)


pyyhon初学者容易忽视python调试程序(pdb),这里简单介绍几条重要的语句,详细的请自行参阅官方文档。

1.从命令行启动调试

$ python -m pdb my_script.py

2.在脚本中启动调试(Python 3.7+ 可以使用内置函数breakpoint())

import pdbdef make_bread():    pdb.set_trace()    return "I don't have time"print(make_bread())

调试器的一些命令如下:

  • c:继续执行
  • w: 显示当前执行语句的上下文
  • a: 打印当前函数的参数列表
  • s: 执行当前行并停在第一个能停的地方
  • n: 继续执行,直到当前函数的下一行或当前行直接返回

s(s)tep 就是单步执行,遇到子函数就进入并且继续单步执行,作用是移动到下一个可执行的代码行。如果当前行是一个函数调用,则调试器进入函数并停止在函数体的第一行。step可以帮助初步揭开代码位置的谜团,例如:函数调用和函数本身可能在不同的文件中。

n(n)ext 是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步,作用是在同一个调用栈层中移动到下一个可执行的代码行。调试器不会进入函数体。如果当前行是函数的最后一行,则,next将进入下一个栈层,并在调用函数的下一行停止。


写笔记

咨询

您的电子邮箱地址不会被公开。