1. 程式人生 > >Python學習筆記(異常處理)

Python學習筆記(異常處理)

except exc 剛才 file director pri 中斷 opened rec

用戶輸入了一個不合規定的值,或者需要打開的文件不存在。這些情況被稱作“異常”,一個好的程序需要能處理可能發生的異常,避免程序因此而中斷。

例如我們去打開一個文件:

f = file(‘non-exist.txt‘)

print ‘File opened!‘

f.close()

假如這個文件因為某種原因並沒有出現在應該出現的文件夾裏,程序就會報錯:

IOError: [Errno 2] No such file or directory: ‘non-exist.txt‘

程序在出錯處中斷,後面的print不會被執行。

在python中,可以使用try...except語句來處理異常。做法是,把可能引發異常的語句放在try-塊中,把處理異常的語句放在except-塊中。

把剛才那段代碼放入try...except中:

try:

f = file(‘non-exist.txt‘)

print ‘File opened!‘

f.close()

except:

print ‘File not exists.‘

print ‘Done‘

當程序在try內部打開文件引發異常時,會跳過try中剩下的代碼,直接跳轉到except中的語句處理異常。於是輸出了“File not exists.”。如果文件被順利打開,則會輸出“File opened!”,而不會去執行except中的語句。

但無論如何,整個程序不會中斷,最後的“Done”都會被輸出。

在try...except語句中,try中引發的異常就像是扔出了一只飛盤,而except就是一只靈敏的狗,總能準確地接住飛盤。

Python學習筆記(異常處理)