python的异常处理

0.异常处理

  异常指的是程序运行中出现的各种错误,会导致程序中断执行。

  异常处理则是对程序可能出现的错误做一定的处理,以保证程序的正常运行。

1.Python中的异常处理机制

  python内置了一系列的异常类,这些类中包括了通常可能出现的各种异常情况,在使用的时候,就可以直接调用这个类,来获取异常。(内置异常继承自exception类,自定义异常也可以继承内置的类或者直接继承exception来生成新的类)。如果需要自定义类,则继承exception类,而后,在运行中捕获这个异常。内置异常类如下:

 1 ArithmeticError
 2 AssertionError
 3 AttributeError
 4 BaseException
 5 BufferError
 6 BytesWarning
 7 DeprecationWarning
 8 EnvironmentError
 9 EOFError
10 Exception
11 FloatingPointError
12 FutureWarning
13 GeneratorExit
14 ImportError
15 ImportWarning
16 IndentationError
17 IndexError
18 IOError
19 KeyboardInterrupt
20 KeyError
21 LookupError
22 MemoryError
23 NameError
24 NotImplementedError
25 OSError
26 OverflowError
27 PendingDeprecationWarning
28 ReferenceError
29 RuntimeError
30 RuntimeWarning
31 StandardError
32 StopIteration
33 SyntaxError
34 SyntaxWarning
35 SystemError
36 SystemExit
37 TabError
38 TypeError
39 UnboundLocalError
40 UnicodeDecodeError
41 UnicodeEncodeError
42 UnicodeError
43 UnicodeTranslateError
44 UnicodeWarning
45 UserWarning
46 ValueError
47 Warning
48 ZeroDivisionError
View Code

异常的使用则是通过try...except...else...fially语句来实现完成。

下面是各个语句的执行时所发生的作用:

  try:

    需要判断的语句(code)

  except:

    异常处理语句(handle)

  else:

    如果try为真时,执行的代码(next)

  finally:

    不论是否出现异常都需要执行的代码(end)

而针对不同的情况,有多种的方式可以使用:

(1)简单try...except通用句法

  try:

    code

  except Exception as e:

    handle

(2)try...except与具体情况:

  不区分优先级:

  try:

    code

  except [异常类]...[异常类]:

    handle

  区分优先级:

  try:

    code

  except 异常1:

    handle1

  except 异常2:

    handleer3

  ...

  except Exception as e:

    handle

异常的抛出:

  主要是使用Raise语句来实现,通过:

         Raise  异常类型['说明语句']

3.python异常处理机制与if...else:

  可以发现,try...except与if...else语法存在一定的相似性,不过,阿领着使用有是不同的,两者之间的差别是什么呢

  if ...else用于确定的情啊狂,明确会发生某种情况

  try...except则用于不确定的情况下来使用。

  

参考博客:https://www.cnblogs.com/wj-1314/p/8707804.html

一个会写博客的程序员
原文地址:https://www.cnblogs.com/znn041622/p/10986411.html