如何捕获所有异常,但有人在python?

时间:2013-07-02 09:15:49

标签: python exception-handling

除了某人e.g. KeyboardInterrupt,

之外,我想抓住所有例外情况

以下是我的代码的一部分:

try:
    num = 70
    while 1:
        print 'hello %d' % num
        sleep(0.1)
        num += 1
        a = 1/(num - 80)
except not KeyboardInterrupt:
        print 'ctrl c'
        save(num)

它不起作用。

2 个答案:

答案 0 :(得分:2)

如果您对未抓住SystemExitStopIteration感到满意,请执行

except Exception:

因为它只捕获“更高级别”的异常。不过,这被认为是不好的做法。始终具体地捕捉异常。

答案 1 :(得分:1)

在一般情况之前抓住并重新提起

try:
    #stuff
except KeyboardInterrupt:
    raise #rethrow to a higher handler
except:
    #everything else