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

    一个会写博客的程序员
  • 相关阅读:
    Windows 中 SQLite3 使用(1) -- 配置
    vs中qt的QIcon图标图片加载不上的问题
    VS中QT资源文件qrc加载失败(Q_INIT_RESOURCE)qInitResources_出错
    c++前置声明的一点总结
    Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
    在DLL对话框中截获鼠标按下的消息
    c++跨动态库DLL的内存分配与释放问题
    C++中placement new操作符(经典)
    起底多线程同步锁(iOS)
    AutoLayout框架Masonry使用心得
  • 原文地址:https://www.cnblogs.com/znn041622/p/10986411.html
Copyright © 2011-2022 走看看