linux命令大全
给小白的 Nginx 30分钟入门指南
使用except而不带任何异常类型
你可以不带任何异常类型使用exceptlinux命令大全,如下实例:
try:
正常的操作
......................
except:
发生异常则执行此处代码
......................
else:
没有异常则执行此处代码
使用except而带多种异常类型
你也可以使用相同的except语句来处理多个异常信息,如下所示:
try:
正常的操作
......................
except(Exception1[, Exception2[,...ExceptionN]]]):
发生以上多个异常中的一个,执行这块代码
......................
else:
如果没有异常执行这块代码
try-finally 语句
try-finally 语句无论是否发生异常都将执行最后的代码。
try:
<语句>
finally:
<语句> #退出try时总会执行
raise
捕捉异常可以使用try/except语句。
try:
<语句>%20%20%20%20%20%20%20%20#运行别的代码
except%20<名字>:
<语句>%20%20%20%20%20%20%20%20#如果在try部份引发了'name'异常
except%20<名字>,<数据>:
<语句>%20%20%20%20%20%20%20%20#如果引发了'name'异常,获得附加的数据
else:
<语句>%20%20%20%20%20%20%20%20#如果没有异常发生
def%20div(a,%20b):
%20%20%20%20try:
%20%20%20%20%20%20%20%20print(a%20/%20b)
%20%20%20%20except%20ZeroDivisionError:
%20%20%20%20%20%20%20%20print("Error:%20b%20should%20not%20be%200%20!!")
%20%20%20%20except%20Exception%20as%20e:
%20%20%20%20%20%20%20%20print("Unexpected%20Error:%20{}".format(e))
%20%20%20%20else:
%20%20%20%20%20%20%20%20print('Run%20into%20else%20only%20when%20everything%20goes%20well')
%20%20%20%20finally:
%20%20%20%20%20%20%20%20print('Always%20run%20into%20finally%20block.')
#%20tests
div(2,%200)
div(2,%20'bad%20type')
div(1,%202)
#%20Mutiple%20exception%20in%20one%20line
try:
%20%20%20%20print(a%20/%20b)
except%20(ZeroDivisionError,%20TypeError)%20as%20e:
%20%20%20%20print(e)
#%20Except%20block%20is%20optional%20when%20there%20is%20finally
try:
%20%20%20%20open(database)
finally:
%20%20%20%20close(database)
#%20catch%20all%20errors%20and%20log%20it
try:
%20%20%20%20do_work()
except:%20%20%20%20
%20%20%20%20#%20get%20detail%20from%20logging%20module
%20%20%20%20logging.exception('Exception%20caught!')
%20%20%20%20#%20get%20detail%20from%20sys.exc_info()%20method
%20%20%20%20error_type,%20error_value,%20trace_back%20=%20sys.exc_info()
%20%20%20%20print(error_value)
%20%20%20%20raise
上一个教程:[转帖]Linux命令pmap
下一个教程:Linux磁盘管理命令大全