zoukankan      html  css  js  c++  java
  • 异常

    python使用被称为异常的特殊对象来管理程序执行期间发生的错误。

    异常例子:

      1.NameError:变量未定义

      2.ZeroDivisionError:除数为零

      3.SyntaxError:python解释器语法错误,发生在程序运行前

      4.IndexError:索引超出序列范围

      5.KeyError:字典关键字不存在

      6.FileNotFoundError:文件不存在

      7.AttributeError:对象没有对应属性

    异常处理语句:

      try-except

      带有多个except的try语句

      处理多个异常的except语句

      捕获所有异常,except后加 Exception,或空(不建议)

      try-except-else-finally

      try-finally

    当异常发生时,有两种结果:

      a)使用 try-except 代码块提前编写了处理异常的代码,程序将继续执行

      b)未对异常进行处理,程序将停止,并显示一个traceback,其中含异常报告

    例:用 try-except 处理 ZeroDivisionError 异常:

    1 try:
    2     print(5/0)
    3 except ZeroDivisionError:
    4     print('You can not divide by zero!')

    You can not divide by zero!

    在 3 行 except 后若预先知道将发生何种错误,可写上异常,否则不写即可。只有当执行 try 代码块发生错误时才执行 except 后代码,若 try-except 后还有其它代码则程序继续执行。

    还有一种 try-except-else 代码块,try 语句放入可能引发异常的代码,except 语句放入发生异常后需要执行的动作的代码,有时仅在try语句成功执行后才运行的代码,这些代码放入else语句中。

    上下文管理:with语句

    触发异常:raise语句

      raise ErrorName ()

    断言:assert语句

      assert  expression1 [,expression2]    expression2可选,当expression1为False时执行expression2

    通过类自定义异常:继承字Exception类,通过raise人工触发

    渐变 --> 突变
  • 相关阅读:
    《硅谷之谜》读书笔记
    Google的Bigtable学习笔记(不保证正确性)
    软件开发到底是怎么一回事呢?
    如何控制自己之2016个人目标管理
    如何自适应网页的协议(http/https/……)
    数据库时间戳设计
    AngularJS-Controller的使用-读书笔记
    FIM相关报错汇总
    iPad上的Cookie到底有多长?
    【solr】join查询,跟mysql的join不一样
  • 原文地址:https://www.cnblogs.com/lybpy/p/7784865.html
Copyright © 2011-2022 走看看