使用python自带工具pdb进行调试

法一:

进入调试模式:python -m pdb endorse.py

pdb单步调试命令如下:

命令

解释

break 或 b 设置断点

设置断点

continue 或 c

继续执行程序

list 或 l

查看当前行的代码段

step 或 s

进入函数

return 或 r

执行代码直到从当前函数返回

exit 或 q

中止并退出

next 或 n

执行下一行

pp

打印变量的值

a

查看全部栈内变量

介绍下常用命令使用方法:

先上代码 endorse.py

import os,re
from openpyxl import load_workbook
path=r"C:\huyunan\test\excel\hu\IMS40701DM0hu.xlsx"
file = open(r'center.txt','wb')

workbook  = load_workbook(path)
worksheets = workbook.sheetnames
for sheet in worksheets:
    worksheet1 = workbook[u''+sheet]
    num_rows = worksheet1.max_row
    num_cols = worksheet1.max_column
    for rown in range(num_rows):
        for coln in range(num_cols):
            cell = worksheet1.cell(rown+1,coln+1).comment
            if cell is not None and "center" in cell.text:
                file.write(cell.text.encode())
                print(cell.text)
file.close()

进入调试模式输入b 11(11为行号)

之后输入c指令执行代码,会在11行中断

n命令是单步执行,不会进入函数内部。

s命令是单步执行,会进入函数内部。

指令a是打印出当前函数的参数值

指令j 是跳转到某一行执行有点类似b和c指令结合,具体使用 j xx(xx为行数)

指令q,退出pdb调试模式

现在查看一下num_rows变量的值:pp num_rows

法二:

在py文件中导入pdb,然后再想定断点处加上:pdb.set_trace()

执行:python endorse.py

走到断点处会自动进入pdb。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐