下面是几种用法对比
用法一:
- 捕捉所有的错误
- 只是输出错误的值
- 不知道具体错误发生在哪里
try:
one = 10/0
except Exception as e:
print(e)
运行结果是
division by zero
用法二:
- 捕捉所有错误
- 输出错误发生的具体位置
import traceback
try:
one = 10/0
except Exception as e:
traceback.print_exc()
运行的结果
Traceback (most recent call last):
File "/Users/chenjihong/PycharmProjects/test/test.py", line 67, in <module>
one = 10/0
ZeroDivisionError: division by zero
用法三:
- 将以上发生的结果保存到文件中
import traceback
try:
one = 10/0
except Exception as e:
traceback.print_exc(file = open('/Users/chenjihong/Desktop/test.txt','w+'))
运行结果
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qG77nMgO-1575118483361)(http://note.youdao.com/yws/res/19298/80E91F6E56EB459C834F92EDA32D1EF8)]
用法四:
- 把异常以字符串的形式返回
import traceback
try:
one = 10/0
except:
print(traceback.format_exc())
运行结果
Traceback (most recent call last):
File "/Users/chenjihong/PycharmProjects/test/test.py", line 67, in <module>
one = 10/0
ZeroDivisionError: division by zero