Python中的traceback模块
2024-10-01 06:51:49
traceback模块被用来跟踪异常返回信息. 如下例所示:
1.直接打印异常信息
import traceback
try:
raise SyntaxError, "traceback test"
except:
traceback.print_exc()
将会在控制台输出类似结果:
Traceback (most recent call last):
File "H:\PythonWorkSpace\Test\src\TracebackTest.py", line 3, in <module>
raise SyntaxError, "traceback test"
SyntaxError: traceback test
类似在你没有捕获异常时候, 解释器所返回的结果.
2.输出异常信息到文件
你也可以传入一个文件, 把返回信息写到文件中去, 如下:
import traceback
import StringIO
try:
raise SyntaxError, "traceback test"
except:
fp = StringIO.StringIO() #创建内存文件对象
traceback.print_exc(file=fp)
message = fp.getvalue()
print message
这样在控制台输出的结果和上面例子一样
3.格式化异常信息
traceback模块还提供了extract_tb函数来格式化跟踪返回信息, 得到包含错误信息的列表, 如下:
import traceback
import sys def tracebacktest():
raise SyntaxError, "traceback test"
try:
tracebacktest()
except:
info = sys.exc_info()
for file, lineno, function, text in traceback.extract_tb(info[2]):
print file, "line:", lineno, "in", function
print text
print "** %s: %s" % info[:2]
控制台输出结果如下:
H:\PythonWorkSpace\Test\src\TracebackTest.py line: 7 in <module>
tracebacktest()
H:\PythonWorkSpace\Test\src\TracebackTest.py line: 5 in tracebacktest
raise SyntaxError, "traceback test"
** <type 'exceptions.SyntaxError'>: traceback test
4.将错误信息记录到日志中:
logger.info(traceback.format_exc())
最新文章
- 17. Letter Combinations of a Phone Number
- 在表单中元素的onchange事件的兼容性问题
- eclipse编辑struts.xml 代码提示
- IMX6输出可控PWM
- Go语言并发与并行学习笔记(二)
- .Net码农学Android---五分钟了解布局
- BZOJ 2351 Matrix(哈希)
- texCUBE() to CubemapSampler.Sample()
- boot2docker安装及使用
- 学习笔记_Filter小结(过滤器JavaWeb三大组件之一)
- Oracle core03_ACID
- 使用POI把Word Excel转为HTML
- HTML5外包团队:HTML5 Canvas使用教程
- SQL 必知必会&#183;笔记<;8>;分组数据
- (转)Jenkins持续集成
- ajax的跨域解决方案(java+ajax)
- pytest 学习笔记二:兼容unittest、执行方式、生成报告
- 互联网IP地址的分配
- AWVS扫描工具使用教程
- windows下编译和安装boost库
热门文章
- informix 通过ADO或ODBC连接提取数据时出现中文乱码的解决方法
- MainActivity 多个Fragment 内存被回收
- Ubuntu中在终端进入root权限但是总提示密码错误的解决方案
- postgreSQL中跨库查询在windows下的实现方法
- Dynamics CRM查询实体共享给哪些人
- Metric Learning度量学习:**矩阵学习和图学习
- react基础篇一
- HDU_2149_基础博弈sg函数
- In Swift, typedef is called typealias:
- Spring Cloud Alibaba、Spring Boot、Spring Cloud对应版本关系