Python中处理unchecked未捕获异常实例


Posted in Python onJanuary 17, 2015

Talk Is Cheap

和Java一样,python也提供了对于checked exception和unchecked exception. 对于checked exception,我们通常使用try except可以显示解决,对于unchecked 异常,其实也是提供回调或者是钩子来帮助我们处理的,我们可以在钩子里面记录崩溃栈追踪或者发送崩溃数据.

下面代码可以实现python unchecked exception回调,并输出日志信息.

Show Me The Code

#!/usr/bin/env python

# coding=utf-8

import os, sys

import logging

logger = logging.getLogger(__name__)

handler = logging.StreamHandler(stream=sys.stdout)

logger.addHandler(handler)
def handle_exception(exc_type, exc_value, exc_traceback):

    if issubclass(exc_type, KeyboardInterrupt):

        sys.__excepthook__(exc_type, exc_value, exc_traceback)

        return

    logger.error("Uncaught exception", exc_info=(exc_type, exc_value, exc_traceback))
sys.excepthook = handle_exception

if __name__ == "__main__":

    raise RuntimeError("Test unhandled Exception")

相关解释

1.上述忽略处理终端下键盘按Ctrl + C 终止异常.
2.上述使用python的日志管理模块输出格式化的异常信息.

Python 相关文章推荐
使用PyInstaller将Python程序文件转换为可执行程序文件
Jul 08 Python
python向字符串中添加元素的实例方法
Jun 28 Python
Django用户认证系统 组与权限解析
Aug 02 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
Oct 28 Python
Pytest参数化parametrize使用代码实例
Feb 22 Python
使用Pycharm分段执行代码
Apr 15 Python
Python如何使用队列方式实现多线程爬虫
May 12 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 Python
python接入支付宝的实例操作
Jul 20 Python
python基于pexpect库自动获取日志信息
Feb 01 Python
Python OpenCV快速入门教程
Apr 17 Python
Python实现排序方法常见的四种
Jul 15 Python
Python实现过滤单个Android程序日志脚本分享
Jan 16 #Python
Python中的对象,方法,类,实例,函数用法分析
Jan 15 #Python
Python转换HTML到Text纯文本的方法
Jan 15 #Python
python中os操作文件及文件路径实例汇总
Jan 15 #Python
python私有属性和方法实例分析
Jan 15 #Python
python实现堆栈与队列的方法
Jan 15 #Python
python多线程用法实例详解
Jan 15 #Python
You might like
php实现的美国50个州选择列表实例
2015/04/20 PHP
php版微信公众平台接口开发之智能回复开发教程
2016/09/22 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
Laravel框架之解决前端显示图片问题
2019/10/24 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
jquery.Jwin.js 基于jquery的弹出层插件代码
2012/05/23 Javascript
javascript中方便增删改cookie的一个类
2012/10/11 Javascript
JS 加入收藏夹的代码(主流浏览器通用)
2013/05/13 Javascript
JavaScript中的函数的两种定义方式和函数变量赋值
2014/05/12 Javascript
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
2014/11/20 NodeJs
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
JS实现拖动滚动条评分的效果代码分享
2016/09/29 Javascript
Angular.js实现注册系统的实例详解
2016/12/18 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
一个炫酷的Bootstrap导航菜单
2016/12/28 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
深入理解ES7的async/await的用法
2017/09/09 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
2019/11/06 Javascript
VUE实现自身整体组件销毁的示例代码
2020/01/13 Javascript
Python Mysql自动备份脚本
2008/07/14 Python
Python正则替换字符串函数re.sub用法示例
2017/01/19 Python
Django中login_required装饰器的深入介绍
2017/11/24 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
2020/02/10 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
Python虚拟环境库virtualenvwrapper安装及使用
2020/06/17 Python
python 爬虫如何正确的使用cookie
2020/10/27 Python
Django框架请求生命周期实现原理
2020/11/13 Python
Made in Design英国:设计家具、照明、家庭装饰和花园家具
2019/09/24 全球购物
一套PHP的笔试题
2013/05/31 面试题
棉花姑娘教学反思
2014/02/15 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
优秀学生干部个人事迹材料
2014/06/02 职场文书