写代码过程中,出现各种各样的bug(臭虫)是再也正常不过的事情,比如环境问题,语法问题,逻辑问题。一般来说环境和语法问题是比较直观的,逻辑问题常常需要调试才能发现错误。
测试并修正代码中各种错误的过程被称作调试,又叫 debug(delete bug)。很久很久之前我是掌握这个技能,最近是彻底给它丢了,出现问题就 print everything。仅以此文纪念我终将逝去的各种技能。
print最大的问题就是程序不停止,整个终端都是print,不知道哪个是自己想要的输出结果。我一般的解决方法是在输出前后加上print("this is xiaoming?")。
python中常用的是断点调试:
断点(break point)是指在代码中指定位置,当程序运行到此位置时变中断下来,并让开发者可查看此时各变量的值。因断点中断的程序并没有结束,可以选择继续执行。
在需要调试的地方加上pdb.set_trace() 这句代码需要引入包,在代码开头加上import pdb即可
@常用的命令 @解释
break 或 b 设置断点
continue 或 c 继续执行程序
list 或 l 查看当前行的代码段
step 或 s 进入函数
return 或 r 执行代码直到从当前函数返回
exit 或 q 中止并退出
next 或 n 执行下一行
pp 打印变量的值
help 帮助