如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
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 即可:
1
2
3
4
5
|
try :
...
except Exception as e:
...
log( 'Reason:' , e) # Important!
|
这个将会捕获除了 SystemExit 、 KeyboardInterrupt 和 GeneratorExit 之外的所有异常。 如果你还想捕获这三个异常,将 Exception 改成 BaseException 即可。
以上这篇对Python中内置异常层次结构详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/xiaodongxiexie/article/details/60779485