python 当Exception发生时,使用traceback模块获取更多的stackinfo
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 当Exception发生时,使用traceback模块获取更多的stackinfo相关的知识,希望对你有一定的参考价值。
# coding:UTF-8
import sys
import traceback
def a():
print("a")
b()
def b():
print("b")
try:
c()
except Exception as e:
print("="*90)
traceback.print_exc() # 1
print("="*90)
sys.stderr.write(traceback.format_exc()) # 2
sys.stderr.flush()
print("="*90)
type, val, tb = sys.exc_info() # 3
print(type)
print(val)
for filename, linenum, funcname, source in traceback.extract_tb(tb):
print(filename, linenum, funcname, source)
def c():
print("c")
raise IndexError("some error")
def main():
a()
if __name__ == "__main__":
main()
以上是关于python 当Exception发生时,使用traceback模块获取更多的stackinfo的主要内容,如果未能解决你的问题,请参考以下文章
python Unicode值和相应名称的排序字典。当UnicodeDecodeErrors发生时,用于向用户提供提示。
Pyads 读取通知值:当 TwinCat 循环发生时
python try_except_else_finally例子,如果没有错误发生,可以在除语句块后面加一个其他,当没有错误发生时,会自动执行其他语句:
异常处理
exception
异常相关数据结构