python打印异常信息的两种实现方式

yipeiwu_com6年前Python基础

1. 直接打印错误

try:
 
 # your code
 
except KeyboardInterrupt:
 
 print("quit")
 
except Exception as ex:
 
 print("出现如下异常%s"%ex)

如下例子

try:
 2/0
except Exception as e:
 print(e)

结果为:division by zero

2. 用traceback模块打印

上述结果看不到具体错误的信息,如行数啥的,不方便调试的时候定位,因此也可以用traceback模块,方便调试

import traceback
try:
 2/0
except Exception as e:
 traceback.print_exc()

结果为:

Traceback (most recent call last):
 File "c:\Users\Administrator\Desktop\test1.py", line 3, in <module>
 2/0
ZeroDivisionError: division by zero

ps:上述traceback.print_exc()是直接打印错误

还可以用traceback.format_exc()返回字符串,可将错误信息保存在文档日志中

可以说traceback.print_exc()等同于print traceback.format_exc()

以上这篇python打印异常信息的两种实现方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中在for循环中嵌套使用if和else语句的技巧

for...[if]...构建List (List comprehension) 1.简单的for...[if]...语句 Python中,for...[if]...语句一种简洁的构建L...

django解决跨域请求的问题

解决方案 1.安装django-cors-headers pip install django-cors-headers 2.配置settings.py文件 INSTA...

Python中的jquery PyQuery库使用小结

pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,使用方法:复制代码 代码如下:from pyquery import PyQuery as pq1、可加载...

python清空命令行方式

python清空命令行 ! 有时我们在命令行上运行一些代码时,觉得有些冗余了,可以通过以下代码进行清除命令行上的代码。 import os def clear():os.system...

解决PyCharm同目录下导入模块会报错的问题

在PyCharm2017中同目录下import其他模块,会出现No model named ...的报错,但实际可以运行 这是因为PyCharm不会将当前文件目录自动加入source_p...