# attributeerror 試圖訪問乙個物件沒有的樹形,比如foo.x,但是foo沒有屬性x# ioerror 輸入/輸出異常;基本上是無法開啟檔案
# importerror 無法引入模組或包;基本上是路徑問題或名稱錯誤
# indentationerror 語法錯誤(的子類) ;**沒有正確對齊
# indexerror 下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[5]
# keyerror 試圖訪問字典裡不存在的鍵
# keyboardinterrupt ctrl+c 被按下
# nameerror 使用乙個還未被賦予物件的變數
# syntaxerror python**非法,**不能編譯(個人認為這是語法錯誤,寫錯了)
# typeerror 傳入物件型別與要求的不符合
# unboundlocalerror 試圖訪問乙個還未被設定的區域性變數,基本上是由於另有乙個同名的全域性變數,
# 導致你以為正在訪問它
# valueerror 傳入乙個呼叫者不期望的值,即使值的型別是正確的
# 為什麼需要異常處理 :
# 為了保證程式的健壯性與容錯性,即在遇到錯誤時程式不會崩潰,我們需要對異常進行處理
# 錯誤 : 語法錯誤 和邏輯錯誤
#使用if 判斷式
age=input(">>>:")
if age.isdigit():
int(age)
elif age.isspace():
print("---> 使用者輸入的空格")
elif len(age)==0:
print('--->使用者輸入的為空')
else :
print('其他非法輸入')
# if 判斷雖然可以做異常處理 但是必須為相同** 寫重複的操作 可讀性變得極其的底
#python 為每一種異常定製乙個型別,然後提供了一種特定的語法結構用來進行異常處理
# 如果錯誤發生的條件是不可預知的,則需要用到try...except:在錯誤發生之後進行處理
# #基本語法為
# try:
# 被檢測的**塊
# except 異常型別:
# try中一旦檢測到異常,就執行這個位置的邏輯
# 舉例 如下 :
try :
age = input(">>>")
int(age) # 主邏輯
num2 = input(">>:")
int(num2) # 主邏輯
except valueerror as e :
print(e)
Python 函式以及異常處理
define 定義 def 方法名字 形參 def test pass test 無引數無返回值 def test print 這是我的地盤 test 無引數有返回值 def test fond 學習python使我快樂 return fond t test print t 有引數無返回值 def ...
python異常處理 Python 異常處理
使用者輸入不完整 比如輸入為空 或者輸入非法 輸入不是數字 異常就是程式執行時發生錯誤的訊號,在python中,錯誤觸發的異常如下 在python中不同的異常可以用不同的型別 python中統一了類與型別,型別即類 去標識,不同的類物件標識不同的異常,乙個異常標識一種錯 觸發indexerror 觸...
什麼是捕獲異常以及基本語法
異常是指語法上沒有錯誤,在程式執行的過程當中,由於某些原因程式出現了錯誤,不能再正常的執行了 這時我們需要使用try catch來進行異常捕獲 try和catch之間不要有 try catch 如果try中的 出現了異常,那麼異常的那一句後面即使有 也不會執行了 但是這裡存在乙個 問題,即變數的作用...