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

yipeiwu_com7年前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实现的简单读写csv文件操作示例

Python实现的简单读写csv文件操作示例

本文实例讲述了Python实现的简单读写csv文件操作。分享给大家供大家参考,具体如下: python中有一个读写csv文件的包,直接import csv即可 新建test.csv 1....

python整小时 整天时间戳获取算法示例

根据当前时间戳获得整小时时间戳 unit = 3600 start_time = int(time.time())/3600 * 3600 根据当前时间戳获得整天时间戳 uni...

Python高级编程之消息队列(Queue)与进程池(Pool)实例详解

Python高级编程之消息队列(Queue)与进程池(Pool)实例详解

本文实例讲述了Python高级编程之消息队列(Queue)与进程池(Pool)。分享给大家供大家参考,具体如下: Queue消息队列 1.创建 import multiprocess...

Pyinstaller将py打包成exe的实例

Pyinstaller将py打包成exe的实例

背景:分享python编写的小脚本时,拷贝代码还缺各种环境,使用Pyinstaller将py可以打包成exe,直接运行即可 1、安装pyinstaller运行时所需要的windows拓展...

对Python中小整数对象池和大整数对象池的使用详解

1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。 Python 对小整数的定义是 [-5, 256] 这...