[print、=]python的异常处理

软件开发 116
file=open('EOFError)ase;print('.format([-1]))finally;print("print(',exception'。#butforwhichexceptionsshouldNOTbecaughtprint('print(',

目录快捷导航:

  1. 1 、 python的异常处理结构,python的异常处理结构包含的关键字
  2. 2 、 python的异常处理语句,python的异常处理语句用的保留字
  3. 3 、 python的异常处理机制,python的异常处理机制及语法结构

python的异常处理结构,python的异常处理结构包含的关键字

  • 1 . 可能触发异常产生的代码会放到try语句块里,而处理异常的代码会在except语句块里实现。
  • http://img.jb-hk.com/img/ucR5RwNqMU3filo2bfIhBZJjSvXZZwa9.jpg

  • 2 . 例如:file=open('','rb')exceptIOErrorase:print('AnIOErroroccurred.{}'.format([-1]))。
  • 3 . 我们可以使用三种方法来处理多个异常。第一种方法需要把所有可能发生的异常放到一个元组里。
  • 4 . 像这样:file=open('','rb')except(IOError,EOFError)ase:print("Anerroroccurred.{}".format([-1]))。
  • 5 . 另外一种方式是对每个单独的异常在单独的except语句块中处理。

python的异常处理语句,python的异常处理语句用的保留字

  • 1 . 我们想要多少个except语句块都可以:file=open('','rb')exceptEOFErrorase:print("AnEOFerroroccurred.")raiseeexceptIOErrorase:print("Anerroroccurred.")raisee。
  • 2 . 最后一种方式会捕获。异常:file=open('','rb')exceptExceptionase:#Someloggingifyouwantraisee。
  • http://img.jb-hk.com/img/5hqvvQHRZ5XzAE7MU7SqzFuTFq47FgT7.jpg

  • 3 . 捕获所有异常可能会造成意外的结果,比如,通常我们使用CTRL+C来终止程序,但如果程序中捕获了所有异常,CTRL+C就无法终止程序了。

python的异常处理机制,python的异常处理机制及语法结构

  • 1 . 包裹到finally从句中的代码不管异常是否触发都将会被执行。
  • 2 . 这可以被用来在脚本执行之后做清理工作:file=open('','rb')exceptIOErrorase:print('AnIOErroroccurred.{}'.format([-1]))finally:print("Thiswouldbeprintedwhetherornotanexceptionoccurred!")#Output:AnIOErroroccurred.Nosuchfileordirectory#Thiswouldbeprintedwhetherornotanexceptionoccurred!。
  • http://img.jb-hk.com/img/hnuSPmI2hFawmNagmidftHVPVjRRzDMP.jpg

  • 3 . 如果想在没有触发异常的时候执行一些代码,可以使用else从句。
  • 4 . 有人也许问了:如果你只是想让一些代码在没有触发异常的情况下执行,为啥你不直接把代码放在try里面呢?
  • 5 . 回答是,那样的话这段代码中的任意异常都还是会被try捕获,而你并不一定想要那样。

最后:

print('Iamsurenoexceptionisgoingtooccur!')exceptException:print('exception')else:#anycodethatshouldonlyrunifnoexceptionoccursinthetry,#butforwhichexceptionsshouldNOTbecaughtprint('Thiswouldonlyrunifnoexceptionoccurs.Andanerrorhere''wouldNOTbecaught.')finally:print('Thiswouldbeprintedineverycase.')#Output:Iamsurenoexceptionisgoingtooccur!#Thiswouldonlyrunifnoexceptionoccurs.AndanerrorherewouldNOTbecaught#Thiswouldbeprintedineverycase.。else从句只会在没有异常的情况下执行,而且它会在finally语句之前执行。

扫码二维码