对Python中内置异常层次结构详解
如下所示:
BaseException +--SystemExit +--KeyboardInterrupt +--GeneratorExit +--Exception +--StopIteration +--StandardError |+--BufferError |+--ArithmeticError ||+--FloatingPointError ||+--OverflowError ||+--ZeroDivisionError |+--AssertionError |+--AttributeError |+--EnvironmentError ||+--IOError ||+--OSError ||+--WindowsError(Windows) ||+--VMSError(VMS) |+--EOFError |+--ImportError |+--LookupError ||+--IndexError ||+--KeyError |+--MemoryError |+--NameError ||+--UnboundLocalError |+--ReferenceError |+--RuntimeError ||+--NotImplementedError |+--SyntaxError ||+--IndentationError ||+--TabError |+--SystemError |+--TypeError |+--ValueError |+--UnicodeError |+--UnicodeDecodeError |+--UnicodeEncodeError |+--UnicodeTranslateError +--Warning +--DeprecationWarning +--PendingDeprecationWarning +--RuntimeWarning +--SyntaxWarning +--UserWarning +--FutureWarning +--ImportWarning +--UnicodeWarning +--BytesWarning
想要捕获所有的异常,可以直接捕获Exception即可:
try: ... exceptExceptionase: ... log('Reason:',e)#Important!
这个将会捕获除了SystemExit、KeyboardInterrupt和GeneratorExit之外的所有异常。如果你还想捕获这三个异常,将Exception改成BaseException即可。
以上这篇对Python中内置异常层次结构详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。