解决pyqt5异常退出无提示信息的问题


Posted in Python onApril 08, 2020

问题:在pyqt界面运行中会异常退出,但是无出错代码追踪信息。

解决方法:

解决pyqt5异常退出无提示信息的问题

选中Emulate terminal in output console即可显示错误信息。

补充知识:python logging 日志 通过修饰器获取错误信息

今天公司要求研究一下python日志相关的信息,用户通过使用图形化界面产生错误后并不知道为什么报错。因此,要通过日志实现记录错误的功能。

import functools
import logging

def create_logger():
  logger = logging.getLogger("test_log")
  logger.setLevel(logging.INFO)
  fh = logging.FileHandler("test.log")
  fmt = "\n[%(asctime)s-%(name)s-%(levelname)s]: %(message)s"
  formatter = logging.Formatter(fmt)
  fh.setFormatter(formatter)
  logger.addHandler(fh) 
  return logger

def log_exception(fn):
  @functools.wraps(fn)
  def wrapper(*args, **kwargs):

    logger = create_logger()
    try:
      fn(*args, **kwargs)
    except Exception as e:
      logger.exception("[Error in {}] msg: {}".format(__name__, str(e)))
      raise
  return wrapper


@log_exception
def tain(x):
  x=10
  def nat():
    print u
  nat()

tain(1)

运行它之后会生成一个test.log的日志文件,当报错时,会把错误记录起来。

以上这篇解决pyqt5异常退出无提示信息的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现html转ubb代码(html2ubb)
Jul 03 Python
Python入门篇之条件、循环
Oct 17 Python
浅谈django model postgres的json字段编码问题
Jan 05 Python
Python实现随机漫步功能
Jul 09 Python
关于Django ForeignKey 反向查询中filter和_set的效率对比详解
Dec 15 Python
Python在图片中插入大量文字并且自动换行
Jan 02 Python
Python实现简单石头剪刀布游戏
Jan 20 Python
Python类的继承用法示例
Jan 31 Python
Python + OpenCV 实现LBP特征提取的示例代码
Jul 11 Python
python 读取二进制 显示图片案例
Apr 24 Python
使用OpenCV去除面积较小的连通域
Jul 05 Python
python实现扫雷游戏的示例
Oct 20 Python
python由已知数组快速生成新数组的方法
Apr 08 #Python
TensorFlow2.X使用图片制作简单的数据集训练模型
Apr 08 #Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
Apr 08 #Python
使用Python将Exception异常错误堆栈信息写入日志文件
Apr 08 #Python
TensorFlow2.X结合OpenCV 实现手势识别功能
Apr 08 #Python
python 安装库几种方法之cmd,anaconda,pycharm详解
Apr 08 #Python
TensorFlow2.1.0最新版本安装详细教程
Apr 08 #Python
You might like
PHP 日期加减的类,很不错
2009/10/10 PHP
php Session存储到Redis的方法
2013/11/04 PHP
PHP英文字母大小写转换函数小结
2014/05/03 PHP
Thinkphp实现自动验证和自动完成
2015/12/19 PHP
WordPress主题制作之模板文件的引入方法
2015/12/28 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
PHP调用接口API封装的例子
2019/10/11 PHP
jquery中dom操作和事件的实例学习 下拉框应用
2011/12/01 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
用Javascript来生成ftp脚本的小例子
2013/07/03 Javascript
两种不同的方法实现js对checkbox进行全选和反选
2014/05/13 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
微信小程序实现文件、图片上传功能
2020/08/18 Javascript
基于iview-admin实现动态路由的示例代码
2019/10/02 Javascript
js单线程的本质 Event Loop解析
2019/10/29 Javascript
javascript实现图片轮换动作方法
2020/08/07 Javascript
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
在Python中使用lambda高效操作列表的教程
2015/04/24 Python
Python多进程机制实例详解
2015/07/02 Python
python简单文本处理的方法
2015/07/10 Python
Linux中Python 环境软件包安装步骤
2016/03/31 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
怎样使用Python脚本日志功能
2016/08/14 Python
Python操作Sql Server 2008数据库的方法详解
2018/05/17 Python
python pandas实现excel转为html格式的方法
2018/10/23 Python
python实现tail实时查看服务器日志示例
2019/12/24 Python
Tensorflow设置显存自适应,显存比例的操作
2020/02/03 Python
python_mask_array的用法
2020/02/18 Python
django创建css文件夹的具体方法
2020/07/31 Python
木工主管岗位职责
2013/12/08 职场文书
机械设计毕业生自荐信
2014/02/02 职场文书
致200米运动员广播稿
2014/02/06 职场文书
教学改革实施方案
2014/03/31 职场文书
教师年度考核评语
2014/04/28 职场文书
担保公司2015年终工作总结
2015/10/14 职场文书