一、什么是異常捕獲
讓程序執(zhí)行過(guò)程中出現(xiàn)異常的時(shí)候不崩潰 可以繼續(xù)執(zhí)行
注意:不是任何時(shí)候都要用異常捕獲琼开,是在你明明知道某個(gè)位置可能會(huì)出現(xiàn)異常,又不想讓程序崩潰的時(shí)候才使用
二枕荞、異常捕獲的語(yǔ)法
1)結(jié)構(gòu)一
try:
代碼段1
except:
代碼段2
執(zhí)行過(guò)程:先執(zhí)行代碼段1柜候,如果執(zhí)行過(guò)程中出現(xiàn)異常直接執(zhí)行代碼段2,如果代碼段1中沒(méi)有異常躏精,代碼段2不會(huì)執(zhí)行渣刷。
# 輸入年齡
try:
age= int(input('請(qǐng)輸入年齡:'))
except:
print('輸入錯(cuò)誤,請(qǐng)重輸')
age = int(input('請(qǐng)輸入年齡:'))
print(age)
2)結(jié)構(gòu)二:針對(duì)指定類(lèi)型異常進(jìn)行捕獲
try:
代碼段1
except 異常類(lèi)型:
代碼段2
執(zhí)行過(guò)程:先執(zhí)行代碼段1矗烛,如果代碼段1出現(xiàn)異常辅柴,判斷出現(xiàn)的異常類(lèi)型是否和except后面的異常類(lèi)型一致,
如果一致程序不崩潰直接執(zhí)行代碼段2瞭吃,不一致程序直接崩潰碌嘀。
3)結(jié)構(gòu)三:同時(shí)捕獲多種異常,針對(duì)不同的異常做相同的處理
try:
代碼段1
except (異常類(lèi)型1,異常類(lèi)型2歪架,...):
代碼段2
finally:
代碼段3
4)結(jié)構(gòu)四:同時(shí)捕獲多種異常股冗,針對(duì)不同的異常做不同的處理
try:
代碼段1
except 異常類(lèi)型1:
代碼段11
except 異常類(lèi)型2:
代碼段22
except 異常類(lèi)型3:
代碼段33
三、finally 關(guān)鍵字
在所有異常捕獲的語(yǔ)法結(jié)構(gòu)后面都可以添加finally關(guān)鍵字:
try:
代碼段1
except:
代碼段2
finally:
代碼段3
代碼段3無(wú)論什么情況都會(huì)執(zhí)行