python 異常處理

2022-06-13 18:36:10 字數 1834 閱讀 2437

1、異常基礎

在程式設計過程中為了增加友好性,在程式出現bug時一般不會將錯誤資訊顯示給使用者,而是現實乙個提示的頁面,通俗來說就是不讓使用者看見大黃頁!!!

需求:將使用者輸入的兩個數字相加

while

true:

num1 = raw_input('

num1:')

num2 = raw_input('

num2:')

try:

num1 =int(num1)

num2 =int(num2)

result = num1 +num2

except

exception, e:

print

'出現異常,資訊如下:

'print e

2、異常種類

python中的異常種類非常多,每個異常專門用於處理某一項異常!!!

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

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

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

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

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

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

keyboardinterrupt ctrl+c被按下

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

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

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

unboundlocalerror 試圖訪問乙個還未被設定的區域性變數,基本上是由於另有乙個同名的全域性變數,導致你以為正在訪問它

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

dic = ["

wupeiqi

", '

alex']

try:

dic[10]

except

indexerror, e:

print e

dic = 

try:

dic[

'k20']

except

keyerror, e:

print e

s1 = '

hello

'try

: int(s1)

except

valueerror, e:

print e

3、異常其他結構

try

:

#主**塊

pass

except

keyerror,e:

#異常時,執行該塊

pass

else

:

#主**塊執行完且無異常,執行該塊

pass

finally

:

#無論異常與否,最終執行該塊

pass

4、主動觸發異常

try

:

raise exception('

錯誤了。。。')

except

exception,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...