添加“ raise”语句是否有所不同?

时间:2018-07-08 17:06:19

标签: python

import sys
try:
    f = open('myile.txt')
    s = f.readline()
    i = int(s.strip())
except OSError as err:
    print("OS Error: {0}".format(err))
except ValueError:
    print("Not integer")
except:
    print("Unexpected Error:", sys.exc_info()[0])
    # raise

我发现使用/不使用raise语句都可以得到相同的结果。有人可以告诉我区别吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

我认为我在官方文档中找到了答案:“如果不存在任何表达式,raise将重新引发当前作用域中最后一个异常。如果当前作用域中没有任何异常,引发RuntimeError异常,表明这是一个错误。”