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 相关文章推荐
python连接MySQL数据库实例分析
May 12 Python
使用Python3 编写简单信用卡管理程序
Dec 21 Python
python制作小说爬虫实录
Aug 14 Python
python如何将图片转换为字符图片
Aug 19 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
numpy添加新的维度:newaxis的方法
Aug 02 Python
Django中的ajax请求
Oct 19 Python
使用python模拟高斯分布例子
Dec 09 Python
python列表推导和生成器表达式知识点总结
Jan 10 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
Python 制作查询商品历史价格的小工具
Oct 20 Python
如何向scrapy中的spider传递参数的几种方法
Nov 18 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提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
PHP与MySQL开发的8个技巧小结
2010/12/17 PHP
php数组编码转换示例详解
2014/03/11 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
用htc组件制作windows选项卡
2007/01/13 Javascript
IE与firefox之jquery用法区别
2008/10/03 Javascript
JavaScript 继承详解(一)
2009/07/13 Javascript
Javascript简单实现可拖动的div
2013/10/22 Javascript
jquery实现的省市区三级联动
2015/04/02 Javascript
jQuery增加自定义函数的方法
2015/07/18 Javascript
详解ES6之用let声明变量以及let loop机制
2017/07/15 Javascript
JS中正则表达式要注意lastIndex属性
2017/08/08 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
elementUI select组件value值注意事项详解
2019/05/29 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
2020/03/31 Javascript
Python字符串和文件操作常用函数分析
2015/04/08 Python
使用70行Python代码实现一个递归下降解析器的教程
2015/04/17 Python
python字符串编码识别模块chardet简单应用
2015/06/15 Python
Python logging模块用法示例
2018/08/28 Python
Python 监测文件是否更新的方法
2019/06/10 Python
简单了解python PEP的一些知识
2019/07/13 Python
python+selenium 点击单选框-radio的实现方法
2019/09/03 Python
python生成并处理uuid的实现方式
2020/03/03 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
2020/05/28 Python
中东最大的在线宠物店:Dubai Pet Food
2020/06/11 全球购物
某科技软件测试面试题
2013/05/19 面试题
服务员岗位职责
2014/01/29 职场文书
三方协议书范本
2014/04/22 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
2015年母亲节活动总结
2015/02/10 职场文书
2015年建筑工作总结报告
2015/05/04 职场文书
比赛主持人开场白
2015/05/29 职场文书
2019客服个人年终工作总结范文
2019/07/08 职场文书
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA