python断点调试从哪里看数据_Python Pdb 断点调试 - 简明教程
Pdp 調(diào)試
pdb是一種在命令行下面調(diào)試的古老的方法,雖然沒(méi)有現(xiàn)代IDE集成的debug功能強(qiáng)大,但是簡(jiǎn)單通用,大部分語(yǔ)言都支持。
main.py
1 for x in range(10):
2 pass
3
4 print('a')
5 print('b')
6 print('c')
7 print('d')
8 print('e')
9 print('f')
10 print('g')
>>> python -m pdb main.py
-> for x in range(10): # pdp 把我們的代碼解析成一行一行執(zhí)行,當(dāng)前執(zhí)行第一行
(Pdb) n # 執(zhí)行下一行
-> pass
(Pdb) n # 下一行
-> for x in range(10):
(Pdb) p x # p 查詢當(dāng)前 x 的值
1
(Pdb) j 8 # 定位到行
-> print('e')
(Pdb) n
e
-> print('f')
(Pdb) q # 退出
# 我們就這樣一行一行的追蹤錯(cuò)誤
斷點(diǎn)
# 有時(shí)候一行一行的運(yùn)行會(huì)有點(diǎn)費(fèi)時(shí)間,pdb還支持設(shè)置斷點(diǎn)
(Pdb) b 8 # 8 行斷點(diǎn)
(Pdb) b 9 # 9 行斷點(diǎn)
(Pdb) b 9 # 10 行斷點(diǎn)
# 查看當(dāng)前斷點(diǎn)
(Pdb) b
Num Type Disp Enb Where
1 breakpoint keep yes at /Users/jason/Desktop/env3/main.py:8
2 breakpoint keep yes at /Users/jason/Desktop/env3/main.py:9
3 breakpoint keep yes at /Users/jason/Desktop/env3/main.py:10
# 刪除斷點(diǎn)
(Pdb) cl 9
# 斷點(diǎn)運(yùn)行
(Pdb) c # 執(zhí)行第一個(gè)斷點(diǎn)停止
a
b
c
d
-> print('e')
(Pdb) c # 下一個(gè)斷點(diǎn)
e
-> print('f')
help
# 更多 Pdb 命令
(Pdb) h
Documented commands (type help ):
========================================
EOF c d h list q rv undisplay
a cl debug help ll quit s unt
alias clear disable ignore longlist r source until
args commands display interact n restart step up
b condition down j next return tbreak w
break cont enable jump p retval u whatis
bt continue exit l pp run unalias where
Miscellaneous help topics:
==========================
exec pdb
debug是個(gè)經(jīng)驗(yàn)活,沒(méi)有多少方法論可以總結(jié)。我自己在日常的開(kāi)發(fā)中,使用得最多的調(diào)試方法,還是print()
總結(jié)
以上是生活随笔為你收集整理的python断点调试从哪里看数据_Python Pdb 断点调试 - 简明教程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python集合例题_python练习题
- 下一篇: 做美瞳线痛吗