zoukankan      html  css  js  c++  java
  • 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

    一个会写博客的程序员
  • 相关阅读:
    oldboy_09_03day_test1
    oldboy_09_03day
    java消息队列
    es6语法([...arr], set/map数据结构,数组扩展,箭头函数等)
    Angular 2 Expression Changed After It Has Been Checked Exception
    jQuery之Deferred对象详解
    js面向对象:Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
    Angular 4.x 动态创建组件
    JS中this的四种用法
    typescript主键自增长
  • 原文地址:https://www.cnblogs.com/znn041622/p/10986411.html
Copyright © 2011-2022 走看看