python:pdb的调试、编码规范

1 首先cmd跳到指定目录

 E:(回车)

cd langugage\sublime\python

2 python -m pdb test.py  (-m 表示调试模块,test.py为调试的模块名)

3 l  (list)显示当前代码

  n (next)向下执行一行代码(加入遇到函数调用,不会调到函数里面执行,而是当成一行正常的代码执行完毕)

  c continue,向下执行代码(与没有用pdb执行效果一样),直接执行完毕

  b 6 (break)打断点,在第6行打断点;设置断点后,直接c,运行到断点处。

 clear 1  删除第一个断点,后面跟的是断点的序列号

 s  step跳到函数内部执行:当函数运行到函数调用那行时,s+enter,跳入到函数内部执行

 p  (print)变量名:打印变量的值

 a (args)打印形参的值

 r (return)快速执行到函数的最后一行 (并不一定是程序的最后一行,若在调用的函数内部,则执行到函数最后一行)

 q 退出调试


动手调试一下

#pdb对python的调试

import pdb
def add3Nums(a1,a2,a3):
	result=a1+a2+a3
	return result

def get3NumsAvarage(s1,s2):
	s3=s1+s2+s1
	result=0
	result=add3Nums(s1,s2,s3)/3
	return result #之前没有这句话,没有返回值,final=None

if __name__=='__main__':
	a=11
	b=12
	final=get3NumsAvarage(a,b)
	print(final)

交互式调试

import

pdb.run('test(args)')  #调试写好的test模块(args)为需要的参数

程序中埋点

在程序中设置好,运行到那一步就进入调试模式:

import pdb
if __name__=='__main__':
	a=11
	b=12
	pdb.set_trace()#程序运行到这里进入调试模式
	final=get3NumsAvarage(a,b)
	print(final)

函数与函数之间用一个空行,函数与类之间用两个空行。

pep8规范

python:pdb的调试、编码规范_第1张图片python:pdb的调试、编码规范_第2张图片python:pdb的调试、编码规范_第3张图片python:pdb的调试、编码规范_第4张图片

你可能感兴趣的:(python)