import pdb和 pdb.set-trace() 打个断点,
一行行运行。
Read Chapter 9—When You Don’t Even Know What to Log: Using Debuggers—of Karen Tracey’s Django 1.1 Testing and Debugging. ( Getting started with the Python debugger, pdb - Stack Overflow的285页开始,用关键词搜索找例子 )
## Error in `library()`:
## ! there is no package called 'tidyverse'
## Error in `tibble::tribble(~命令, ~解释, "break 或 b 设置断点", "设置断点", "continue 或 c", "继续执行程序",
## "list 或 l", "查看当前行的代码段", "step 或 s", "进入函数", "return 或 r", "执行代码直到从当前函数返回",
## "exit 或 q", "中止并退出", "next 或 n", "执行下一行", "pp", "打印变量的值", "help", "帮助") %>%
## kable()`:
## ! could not find function "%>%"
- Python 代码调试技巧 接下来用这里面的例子,进行debug。
import pdb
a = "aaa"
pdb.set_trace()
b = "bbb"
c = "ccc"
final = a + b + c
print final
点击一次run后,
--Return--
> <ipython-input-9-f978fbaf6ec9>(3)<module>()->None
-> pdb.set_trace()
(Pdb)
等待执行程序,这个时候如果按输入n且点击键盘上的enter键。
--Return--
> <ipython-input-9-f978fbaf6ec9>(3)<module>()->None
-> pdb.set_trace()
(Pdb) n
> c:\programdata\anaconda3\lib\site-packages\ipython\core\interactiveshell.py(2865)run_code()
-> sys.excepthook = old_excepthook
开始了debug。这个时候重复点击键盘上的enter键,一直debug。
--Return--
> <ipython-input-9-f978fbaf6ec9>(3)<module>()->None
-> pdb.set_trace()
(Pdb) n
> c:\programdata\anaconda3\lib\site-packages\ipython\core\interactiveshell.py(2865)run_code()
-> sys.excepthook = old_excepthook
(Pdb)
> c:\programdata\anaconda3\lib\site-packages\ipython\core\interactiveshell.py(2881)run_code()
-> outflag = False
(Pdb) c
aaabbbccc
玩够了以后,输入ccontinue,继续执行程序,完成了。