190425異常處理

2022-07-02 21:33:12 字數 2186 閱讀 7147

異常:程式執行時發生錯誤的訊號

attributeerror 試圖訪問乙個物件沒有的屬性,比如foo.x,但是foo沒有屬性x

ioerror 輸入/輸出異常;基本上是無法開啟檔案

importerror 無法引入模組或包;基本上是路徑問題或名稱錯誤

indentationerror 語法錯誤(的子類) ;**沒有正確對齊

indexerror 下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[5]

keyerror 試圖訪問字典裡不存在的鍵

keyboardinterrupt ctrl+c被按下

nameerror 使用乙個還未被賦予物件的變數

syntaxerror python**非法,**不能編譯(個人認為這是語法錯誤,寫錯了)

typeerror 傳入物件型別與要求的不符合

unboundlocalerror 試圖訪問乙個還未被設定的區域性變數,基本上是由於另有乙個同名的全域性變數,

導致你以為正在訪問它

valueerror 傳入乙個呼叫者不期望的值,即使值的型別是正確的

try:

num1 = input("1>>: ")

num1 = int(num1)

num2 = input("2>>: ")

num2 = int(num2)

except valueerror as e:

print(e) #列印異常值

try:

num1 = input("1>>: ")

num1 = int(num1)

num2 = input("2>>: ")

num2 = int(num2)

l =

print(l[12])

except valueerror as e:

print(e) #列印異常值

except keyerror as e:

print(e)

except indexerror as e:

print(e)

try:

num1 = input("1>>: ")

num1 = int(num1)

num2 = input("2>>: ")

num2 = int(num2)

l =

print(l[12])

except exception as e: #exception 萬能異常

print(e) #列印異常值

num1 = '123'

try:

int(num1)

except indexerror as e:

print(e)

except keyerror as e:

print(e)

except valueerror as e:

print(e)

else:

print("try內**沒有異常時執行")

finally:

print("try記憶體**無論有沒有異常時都執行,通常做清理工作")

try:

raise typeerror("error")

except typeerror as e:

print(e)

class myexception(baseexception):

def __init__(self,msg):

self.msg = msg

def __str__(self):

return self.msg

try:

raise myexception("myerror")

except myexception as e:

print(e)

def t1():

res = 1

return res

def t2():

res = 2

return res

res1 = t1()

res2 = t2()

assert res1 == res2 #斷言 res2是否等於res2,如果錯誤則報異常

struts 異常處理 全域性異常處理

記錄一下全域性異常處理的過程 處理主動丟擲的異常,轉向錯誤提示頁面。1 寫乙個自己的異常,繼承runtimeexception,從父類生成構造方法 package me.yndy.srtp.exception suppresswarnings serial public class errorexc...

python異常處理 Python 異常處理

使用者輸入不完整 比如輸入為空 或者輸入非法 輸入不是數字 異常就是程式執行時發生錯誤的訊號,在python中,錯誤觸發的異常如下 在python中不同的異常可以用不同的型別 python中統一了類與型別,型別即類 去標識,不同的類物件標識不同的異常,乙個異常標識一種錯 觸發indexerror 觸...

01 異常 異常處理

注意 1 對定義的變數能初始化的盡量初始化,如果賦的值可能產生誤導,可以採用可空型別 例如 double?dnumres null 3 異常 執行的時候出現的錯誤,或bug 編寫 的預期條件玉實際條件不穩合 異常的機制是為了保證程式可以一直正常執行。丟擲異常 throw new exception ...