解决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之hello world
May 21 Python
Python中字典和JSON互转操作实例
Jan 19 Python
Python压缩和解压缩zip文件
Feb 14 Python
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
Aug 08 Python
Python实现加载及解析properties配置文件的方法
Mar 29 Python
Python File(文件) 方法整理
Feb 18 Python
Python3.0中普通方法、类方法和静态方法的比较
May 03 Python
在python中用url_for构造URL的方法
Jul 25 Python
python的range和linspace使用详解
Nov 27 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
Python访问Redis的详细操作
Jun 26 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类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
jquery键盘事件使用介绍
2011/11/01 Javascript
showModelDialog弹出文件下载窗口的使用示例
2013/11/19 Javascript
JavaScript闭包函数访问外部变量的方法
2014/08/27 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
jQuery ajax分页插件实例代码
2016/01/27 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
浅析node Async异步处理模块用例分析及常用方法介绍
2017/11/17 Javascript
20行JS代码实现粘贴板复制功能
2018/02/06 Javascript
vuex 项目结构目录及一些简单配置介绍
2018/04/08 Javascript
jQuery表单元素过滤选择器用法实例分析
2019/02/20 jQuery
浅谈vue-router路由切换 组件重用挖下的坑
2019/11/01 Javascript
jquery ajax 请求小技巧实例分析
2019/11/11 jQuery
JS实现简易计算器
2020/02/14 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
[00:12]2018DOTA2亚洲邀请赛 Somnus丶M出阵单挑
2018/04/06 DOTA
Python win32com 操作Exce的l简单方法(必看)
2017/05/25 Python
Python中实现switch功能实例解析
2018/01/11 Python
对pandas replace函数的使用方法小结
2018/05/18 Python
django_orm查询性能优化方法
2018/08/20 Python
python使用requests.session模拟登录
2019/08/09 Python
使用before和:after伪类制作css3圆形按钮
2014/04/08 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
高中毕业自我鉴定
2013/12/16 职场文书
毕业生自荐书
2013/12/18 职场文书
《月迹》教学反思
2014/02/19 职场文书
二手房买卖协议书
2014/04/10 职场文书
服务承诺口号
2014/05/22 职场文书
客户答谢会致辞
2015/01/20 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
圣诞晚会主持词
2015/07/01 职场文书
保安辞职申请书应该怎么写?
2019/07/15 职场文书
详解Python如何批量采集京东商品数据流程
2022/01/22 Python