如何调试Python程序
2017-10-17 23:28
525 查看
方法一:
当你在有问题的代码前加上这段代码,它就可以帮助你在异常时进入ipdb调试模式。前提是你要安装ipython。
import sys
from IPython.core import ultratb
sys.excepthook = ultratb.FormattedTB(mode='Verbose',
color_scheme='Linux', call_pdb=1)
你也可以把上面的代码保存成crash_debug.py,然后在你出问题的文件test.py头上加上
import crash_debug
for i in range(10,-1,-1):
y=1/i
方法二:
1、安装
pip install ipdb
2、使用
python -m ipdb xxx.py
程序内部:
from ipdb import set_trace
set_trace()
3、常用命令
a(rgs) 打印当前函数的参数
j(ump) 让程序跳转到指定的行数
l(ist) 可以列出当前将要运行的代码块
n(ext) 让程序运行下一行,如果当前语句有一个函数调用,用 n 是不会进入被调用的函数体中的
p(rint) 最有用的命令之一,打印某个变量
q(uit) 退出调试
r(eturn) 继续执行,直到函数体返回
s(tep) 跟 n 相似,但是如果当前有一个函数调用,那么 s 会进入被调用的函数体中
当你在有问题的代码前加上这段代码,它就可以帮助你在异常时进入ipdb调试模式。前提是你要安装ipython。
import sys
from IPython.core import ultratb
sys.excepthook = ultratb.FormattedTB(mode='Verbose',
color_scheme='Linux', call_pdb=1)
你也可以把上面的代码保存成crash_debug.py,然后在你出问题的文件test.py头上加上
import crash_debug
for i in range(10,-1,-1):
y=1/i
方法二:
1、安装
pip install ipdb
2、使用
python -m ipdb xxx.py
程序内部:
from ipdb import set_trace
set_trace()
3、常用命令
ENTER(重复上次命令)
c(继续)
l(查找当前位于哪里)
s(进入子程序)
r(运行直到子程序结束)
!<python 命令>
h(帮助)
a(rgs) 打印当前函数的参数
j(ump) 让程序跳转到指定的行数
l(ist) 可以列出当前将要运行的代码块
n(ext) 让程序运行下一行,如果当前语句有一个函数调用,用 n 是不会进入被调用的函数体中的
p(rint) 最有用的命令之一,打印某个变量
q(uit) 退出调试
r(eturn) 继续执行,直到函数体返回
s(tep) 跟 n 相似,但是如果当前有一个函数调用,那么 s 会进入被调用的函数体中
相关文章推荐
- Python 程序如何高效地调试?
- 人生苦短我用python[0x02] 如何调试python程序
- 如何调试Python程序
- 如何调试Python程序
- 如何使用pdb调试python程序
- 如何调试Python程序 通过IDLE
- ubuntu下C++如何调用python程序,gdb调试C++代码
- 如何使用linux下gdb来调试python程序
- andriod + python 程序调试
- python程序里加入调试断点
- linux下如何用GDB调试c++程序
- stm32调试过程中如何判断是程序问题还是硬件问题?
- python利用Pycharm来运行调试Scrapy框架程序
- Pycharm下调试Python的Scrapy爬虫框架程序
- 如何使用VC++调试程序 Debug版本与Release版本
- 如何联机调试和发布程序(99$)
- Python中如何把程序放到后台执行
- python学习初体验——如何编写和运行程序
- 如何用Windbg调试程序
- [转]如何调试程序的 Release 版本