name=['alex
','bob
','cindy']
data={}
try:
#print(name[3])
#print(data['age'])
#open('tes.txt')
a=1print
(a)except
indexerror as e:
print('
下標超出範圍
',e)
except
keyerror as e:
print('
key出錯
',e)
except
filenotfounderror as e:
print('
沒有該檔案
',e)
except
exception as e:
print('
出現未知錯誤')
else: #
不出錯時執行
print('
一切正常')
finally
:
print('
不管出不出錯,都執行
')
出錯了:執行except語句
不出錯:執行else語句(可以沒有)
不管出不出錯:執行finally語句(可以沒有finally部分)
異常錯誤型別:參考
attributeerror 試圖訪問乙個物件沒有的屬性,比如foo.x,但是foo沒有屬性xioerror 輸入/輸出異常;基本上是無法開啟檔案
importerror 無法引入模組或包;基本上是路徑問題或名稱錯誤
indentationerror **沒有正確對齊
indexerror 下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[3]
keyerror 試圖訪問字典裡不存在的鍵
keyboardinterrupt ctrl+c被按下
nameerror 使用乙個還未被賦予物件的變數
syntaxerror python**非法,**不能編譯(語法錯誤,寫錯了)
typeerror 傳入物件型別與要求的不符合
unboundlocalerror 試圖訪問乙個還未被設定的區域性變數,基本上是由於另有乙個同名的全域性變數,導致你以為正在訪問它
valueerror 傳入乙個呼叫者不期望的值,即使值的型別是正確的
exception:通用錯誤(抓住除縮排錯誤、語法錯誤外的所有錯誤)自定義異常:定義新的異常類(繼承exception類)。try:用raise丟擲異常,except:接受到異常,並處理
classalexexception(exception):
def__init__
(self,msg):
self.msg=msg
def__str__
(self):
return
self.msg
try:
raise alexexception('
資料庫連不上
') #
raise 觸發異常
except
exception as e:
print(e)
python異常處理 Python 異常處理
使用者輸入不完整 比如輸入為空 或者輸入非法 輸入不是數字 異常就是程式執行時發生錯誤的訊號,在python中,錯誤觸發的異常如下 在python中不同的異常可以用不同的型別 python中統一了類與型別,型別即類 去標識,不同的類物件標識不同的異常,乙個異常標識一種錯 觸發indexerror 觸...
python異常舉例 Python異常處理
1.1異常問題舉例 例一 i input 請輸入數字 請輸入數字 0 print i print 5 int i traceback most recent call last file line 1,in zerodivisionerror division by zero 上述 的報錯是除零的錯...
python異常處理
當你的程式中出現異常情況時就需要異常處理。比如當你開啟乙個不存在的檔案時。當你的程式中有一些無效的語句時,python會提示你有錯誤存在。下面是乙個拼寫錯誤的例子,print寫成了print。python是大小寫敏感的,因此python將引發乙個錯誤 print hello world file l...