python 调试
来源:互联网 发布:男人穿衣打扮的软件 编辑:程序博客网 时间:2024/05/17 05:15
简单粗暴的 print,直接将错误打印出来,但是调试好之后需要删掉。。
然后稍微委婉一点的 assert,将程序加上断言,进行判断,
def foo(s): n = int(s) assert n != 0, 'n is zero!' return 10 / ndef main(): foo('0')
assert
的意思是,表达式n != 0
应该是True
,否则,后面的代码就会出错。
assert
语句本身就会抛出AssertionError
程序中如果到处充斥着assert
,和print
相比也好不到哪去。不过,启动Python解释器时可以用-O
参数来关闭assert
python -0 xxx.py 来关闭assert,把所有的assert当成是pass来看
再次是logging
它允许你指定记录信息的级别,有debug
,info
,warning
,error
等几个级别,当我们指定level=INFO
时,logging.debug
就不起作用了。同理,指定level=WARNING
后,debug
和info
就不起作用了。这样一来,你可以放心地输出不同级别的信息,也不用删除,最后统一控制输出哪个级别的信息。
logging
的另一个好处是通过简单的配置,一条语句可以同时输出到不同的地方,比如console和文件。
pdb python调试器
python -m pdb xxx.py
输入n 单步调试
输入命令q
结束调试,退出程序
太烦了,,,,还得是logging
0 0
- python调试
- python调试
- python调试
- python调试
- python调试
- Python 调试
- Python调试
- python 调试
- Python调试
- python 调试
- python调试
- python 调试
- python 调试
- python调试
- Python调试
- python调试
- Python调试
- Python 调试
- LaTeX的格式模板一-文章框架
- JSON数据造假和解析
- 中国象棋将帅问题
- 史上最详细的Android Studio系列教程二--基本设置与运行
- Hdoj 2098 分拆素数和 之解题报告
- python 调试
- Android使用枚举单例实现Toast快速刷新
- 流式布局
- 山东省第五届蓝桥杯 ///标题:史丰收速算//c/c++组
- Android之路已经走在路上了...
- java核心技术之反射
- Contextmenu上下文菜单
- mysql5.7重置密码方法
- elasticsearch配置小记