Python 如何编写一个可以捕获所有Python异常的try/except块?

Python 如何编写一个可以捕获所有Python异常的try/except块?

通常情况下,虽然您可以使用以下代码捕获所有异常,但您不应该这样做:

try:
    #执行某些操作()
except:
    print "捕获异常!"

但是,这也会捕获我们可能不感兴趣的KeyboardInterrupt异常。除非您立即重新引发异常 – 我们将无法捕获这些异常:

try:
    f = open('file.txt')
    s = f.readline()
    i = int(s.strip())
except IOError as (errno, strerror):
    print "I/O错误({0}): {1}".format(errno,strerror)
except ValueError:
    print "无法将数据转换为整数。"
except:
    print "意外错误:",sys.exc_info()[0]
    raise

如果文件.txt与脚本位于同一文件夹中,则会得到以下输出。

I/O错误(2):没有那个文件或目录

阅读更多:Python 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程