学无止境

少年辛苦终身事,莫向光阴惰寸功。——唐·杜荀鹤《题弟侄书堂》


python:面向对象-异常

__ name__的值就是__ main__

  • if __ name ==" main__":
  • 判断name是不是main
  • 只有在自己使用的时候默认就是__main __
  • 验证是否在同一类运行
  • 往往在当前类中使用这个个判断

  • 异常


  • 当python脚本发生异常时我们需要捕获处理它,否则程序会终止执行

  • 异常也是python对象,表示一个错误

  • 异常即使一个事件,该事件会在程序

  • 捕获异常的代码

  • try:
    
  •    可能发生异常的代码
    
  • except:
    
  •    发生异常时进入的代码部分
    
  • except捕获多个异常

  • 异常不精确的情况下我们允许存在多个except

  •   try :
          可能发生的异常
      except[异常类型1]:
           .。。。。
      except[异常类型2]:
           。。。。
    
  • 异常的特点:

  • 1、异常并不是每次都会出现,出现的时候要知道通过except

  • 2、没有异常的情况下则except里面的代码则不执行

  • 3、一个try后面可以跟多个except

  • 4、except后面可以跟异常类型,是用来跟你的异常进行匹配的

  • 如果except后面不跟任何类型,必须放在最后否则就是语法错误

  • 可以用元组来表示异常类型

  • except(异常1,异常2) as result
    
  • print ("%s"%result)
    
  • result保存的是异常的提示信息
    
  • except FilrNotFoundError as result:
    
  • except Exception as result:
    
  • except:等同于except Exception as result

  • Exception是所有错误的父类
    
  • 如果希望有异常则不执行某段代码,则可以将代码放到else里

  • importt time   定时器
    
  • time.sleep(2)
    
  • try:可能有异常的代码

  • except:有异常时才会执行的代码

  • else:没有异常才会执行

  • 的代码

  • finally:不管有没有异常都会执行的代码


#try的嵌套

  • 异常有传递性,里面有异常在外面的except也可以捕获到,把所有的捕获都放在外部
  • 函数在调用中也可以处理异常

raise


  • 异常对象是python解释器产生的、
  • python解释器把对象抛出来
  • except负责接受对应的异常
  • 异常 :系统异常,FileNotFONUDError…
  • 自定义异常:系统的不能马满足当前的需求,如何实现自定义类型
  • Ovject-Booarexception—>Exception—>自定义异常
  • 使用raise抛出