首页 > 编程语言 >PYTHON随笔-打印错误堆栈

PYTHON随笔-打印错误堆栈

时间:2023-07-13 11:24:30浏览次数:31  
标签:log PYTHON frame traceback 堆栈 随笔 tb stack

PYTHON随笔-打印错误堆栈

import sys
import traceback

def print_traceback():
    '打印通常的回溯信息,且附有每帧中的局部变量的列表'
    tb=sys.exc_info()[2]    #返回当前异常的(type,value,traceback)
    while tb.tb_next:
        tb=tb.tb_next    #栈中的下一个traceback对象
    stack=[]
    f=tb.tb_frame #每个traceback对应一个帧
    while f:
        stack.append(f) #stack存放指向帧对象的所有引用
        f=f.f_back
    stack.reverse()
    traceback.print_exc()
    log("ERROR", 'locals by frame,innermost last')
    for frame in stack:
        log("ERROR", '  Frame %s in %s at line %s'%(frame.f_code.co_name,
                                           frame.f_code.co_filename,
                                           frame.f_lineno))
        [ log("ERROR", '    {}:{}'.format(key, value)) for key,value in frame.f_locals.items() ]

标签:log,PYTHON,frame,traceback,堆栈,随笔,tb,stack
From: https://www.cnblogs.com/stellarbin/p/17549867.html

相关文章

  • python 数据类型 字符串
    目录python数据类型字符串Python字符串定义Python字符串连接Python转义字符Python字符串运算符Python字符串格式化Unicode字符串python的字符串内置函数python数据类型字符串Python字符串定义#字符串是Python中最常用的数据类型。我们可以使用引号('或")来创建字......
  • 解决指定GPU运行和训练 python程序 、深度学习单卡、多卡 训练GPU设置【一文读懂】的
    指定GPU运行和训练Python程序,深度学习单卡、多卡训练GPU设置在进行深度学习任务时,GPU的使用是提高训练速度和效果的重要手段之一。在Python中,我们可以通过一些方法来指定GPU的运行和训练。指定GPU运行当我们使用多个GPU进行训练时,有时需要手动指定程序运行在哪个GPU上。这可以......
  • 解决支持vscode 1.62 的python插件版本的具体操作步骤
    如何实现支持VSCode1.62的Python插件版本作为一名经验丰富的开发者,我将指导你如何实现支持VSCode1.62的Python插件版本。下面是实现这个目标的步骤:步骤操作1安装VSCode最新版本2创建一个Python插件3更新插件依赖和Python版本4更新插件功能以适应VSCode1......
  • 折线图怎么设置横坐标表示年份python 来解决一个具体问题的方案
    折线图怎么设置横坐标表示年份在使用Python绘制折线图时,可以通过设置横坐标来表示年份。本文将介绍如何根据年份绘制折线图,并给出一个具体的问题来解决。问题描述假设我们有一份数据,记录了某城市从2010年到2020年每年的降水量。我们想要使用折线图来展示这些数据,横坐标表示年份,......
  • 怎么用python抢大麦网演唱会门票 这个问题怎么解决?
    使用Python抢大麦网演唱会门票引言随着互联网的发展,越来越多的人选择在线购买演唱会门票。然而,由于演唱会门票数量有限,很多时候门票在开售后仅仅几分钟内就被抢购一空,这给想要购票的人们带来了很大的困扰。本篇文章将介绍如何使用Python来抢购大麦网演唱会门票,解决这个实际问题。......
  • 怎么升级anconda的python版本 来解决一个具体问题的方案
    如何升级Anaconda的Python版本Anaconda是一个使用Python进行数据科学和机器学习的强大工具。它提供了一个简单的方式来安装和管理Python环境,包括Python解释器、各种常用的科学计算库和工具。然而,有时候我们需要升级Anaconda的Python版本,以便使用最新的功能和库。下面是一些简单的......
  • 怎么让vim执行python在conda中 来解决一个具体问题的方案
    怎么让vim执行python在conda中问题描述在使用vim编辑器进行Python编程时,我们可能会遇到使用conda环境时无法直接执行python代码的问题。这是因为vim默认使用系统的Python环境,而不是我们使用conda创建的环境。因此,我们需要找到一种方法来让vim能够在我们指定的conda环境中执行Pyth......
  • 怎么去除列表中的空格Python 这个问题怎么解决?
    如何去除列表中的空格-Python在Python编程中,我们经常需要处理列表。有时候,我们可能会遇到列表中包含空格的情况。这些空格可能是由于用户输入或者其他原因造成的。如果不处理这些空格,可能会导致程序出现错误或者输出结果不符合预期。本文将介绍如何去除Python列表中的空格,以解......
  • Python基础数据之列表
    (Python基础数据之列表)一、列表介绍1.简介列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表是一个数据的集合,集合内可以放任何数据类型,可对集合方便的增删改查操作。Python已经内置确定序列的长度以及确定最大和最小的元素的方法。2.列表的特性①可以和字符......
  • 怎么更新annaconda中已经安装的python版本 来解决一个具体问题的方案
    怎么更新Anaconda中已经安装的Python版本1.确认当前Python版本在更新Python版本之前,我们需要先确认当前安装的Python版本。可以使用以下命令来查看:condalistpython该命令将列出已安装的Python版本。2.更新Conda在更新Python版本之前,我们先需要更新Conda本身。可以使用以......