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设计】。

相关文章

python3.6的venv模块使用详解

python3.6的venv模块使用详解

今天,在在使用 pycharm 的使用,进行创建 python的时候,发现使用默认的创建的选项使用的python 3环境 。而我系统默认的python环境是 python 2.7 环境;...

python tkinter界面居中显示的方法

由于tkinter没有直接提供居中显示的api,因此,要想将tk的对话框居中显示,需要用到tk自带的设定位置的方法geometry() nScreenWid, nScreenHei...

使用PyCharm创建Django项目及基本配置详解

使用PyCharm创建Django项目及基本配置详解

pycharm是个很不错的python开发工具,大大缩短了python项目的创建时间以及调试时间 在使用python写脚本一段时间后,想尝试使用Django来编写一个python项目,...

关于Python如何避免循环导入问题详解

前言 Python 中使用package时,出现循环导入问题十分常见,我们创建如下package来说明这个问题: pkg ├── __init__.py ├── module_a...

Python编程二分法实现冒泡算法+快速排序代码示例

本文分享的实例主要是Python编程二分法实现冒泡算法+快速排序,具体如下。 冒泡算法: #-*- coding: UTF-8 -*- #冒泡排序 def func(lt): if...