异常信息-traceback

  • 输出结果是integer division or modulo by zero,只知道是报了这个错,但是却不知道在哪个文件哪个函数哪一行报的错。
try:
    1 / 0
except Exception as e:
    print(e)   
# division by zero
  • 使用traceback模块,知道哪个文件哪个函数哪一行出错
import traceback

try:
    1 / 0
except :
    traceback.print_exc()

# Traceback (most recent call last):
#   File "/home/python/Desktop/QA/test.py", line 11, in <module>
#     1 / 0
# ZeroDivisionError: division by zero
  • traceback.print_exc()跟traceback.format_exc()有什么区别呢?
format_exc()返回字符串,print_exc()则直接给打印出来。即traceback.print_exc()print traceback.format_exc()效果是一样的。
print_exc()还可以接受file参数直接写入到一个文件。
比如:traceback.print_exc(file=open('tb.txt','w+'))
写入到tb.txt文件去。

参照: https://blog.csdn.net/handsomekang/article/details/9373035


Shylin

猜你喜欢

转载自blog.csdn.net/shyllin/article/details/80288533