linux命令大全
給小白的 Nginx 30分鐘入門(mén)指南
使用except而不帶任何異常類(lèi)型
你可以不帶任何異常類(lèi)型使用exceptlinux命令大全,如下實(shí)例:
try:
正常的操作
......................
except:
發(fā)生異常則執(zhí)行此處代碼
......................
else:
沒(méi)有異常則執(zhí)行此處代碼
使用except而帶多種異常類(lèi)型
你也可以使用相同的except語(yǔ)句來(lái)處理多個(gè)異常信息,如下所示:
try:
正常的操作
......................
except(Exception1[, Exception2[,...ExceptionN]]]):
發(fā)生以上多個(gè)異常中的一個(gè),執(zhí)行這塊代碼
......................
else:
如果沒(méi)有異常執(zhí)行這塊代碼
try-finally 語(yǔ)句
try-finally 語(yǔ)句無(wú)論是否發(fā)生異常都將執(zhí)行最后的代碼。
try:
<語(yǔ)句>
finally:
<語(yǔ)句> #退出try時(shí)總會(huì)執(zhí)行
raise
捕捉異常可以使用try/except語(yǔ)句。
try:
<語(yǔ)句>%20%20%20%20%20%20%20%20#運(yùn)行別的代碼
except%20<名字>:
<語(yǔ)句>%20%20%20%20%20%20%20%20#如果在try部份引發(fā)了'name'異常
except%20<名字>,<數(shù)據(jù)>:
<語(yǔ)句>%20%20%20%20%20%20%20%20#如果引發(fā)了'name'異常,獲得附加的數(shù)據(jù)
else:
<語(yǔ)句>%20%20%20%20%20%20%20%20#如果沒(méi)有異常發(fā)生
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
上一個(gè)教程:[轉(zhuǎn)帖]Linux命令pmap
下一個(gè)教程:Linux磁盤(pán)管理命令大全