我看过很多关于Python中堆栈跟踪和异常的帖子.但还没有找到我需要的.

我有一段Python 2.7代码可能会引发异常.我想捕捉它,并将其完整描述和导致错误的堆栈跟踪(只是我们在控制台上看到的所有内容)分配给string.我需要这个字符串将其打印到GUI中的文本框中.

大概是这样的:

try:
    method_that_can_raise_an_exception(params)
except Exception as e:
    print_to_textbox(complete_exception_description(e))

问题是:what is the function 100?

推荐答案

参见traceback模块,特别是format_exc()功能.Here

import traceback

try:
    raise ValueError
except ValueError:
    tb = traceback.format_exc()
else:
    tb = "No error"
finally:
    print tb

Python相关问答推荐

手动为pandas中的列上色

Pandas使用过滤器映射多列

Django序列化器没有验证或保存数据

如何才能将每个组比上一组增加N %?

Flask主机持续 bootstrap 本地IP| Python

sys.modulesgo 哪儿了?

机器人与Pyton Minecraft服务器状态不和

如何修复使用turtle和tkinter制作的绘画应用程序的撤销功能

在Python和matlab中显示不同 colored颜色 的图像

重新匹配{ }中包含的文本,其中文本可能包含{{var}

优化器的运行顺序影响PyTorch中的预测

在vscode上使用Python虚拟环境时((env))

Pandas计数符合某些条件的特定列的数量

根据列值添加时区

为一个组的每个子组绘制,

如何在表中添加重复的列?

什么是最好的方法来切割一个相框到一个面具的第一个实例?

python中的解释会在后台调用函数吗?

如何从需要点击/切换的网页中提取表格?

在pandas/python中计数嵌套类别