您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Python中異常處理的方式,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
Python中的異常(Exception)處理
異常
當你的程序出現例外情況時就會發生異常(Exception)。例如,當你想要讀取一個文件時,而那個文件卻不存在,怎么辦?又或者你在程序執行時不小心把它刪除了,怎么辦?這些通過使用異常來進行處理。
類似地,如果你的程序中出現了一些無效的語句該怎么辦?Python 將會對此進行處理,舉起(Raises)它的小手來告訴你哪里出現了一個錯誤(Error)。
錯誤
你可以想象一個簡單的 print 函數調用。如果我們把 print 誤拼成 Print 會怎樣?你會注意到它的首字母是大寫。在這一例子中,Python 會拋出(Raise)一個語法錯誤。
>>> Print("Hello World") Traceback (most recent call last): File "<stdin>", line 1, in <module>NameError: name 'Print' is not defined >>> print("Hello World") Hello World
你會注意到一個 NameError 錯誤被拋出,同時 Python 還會打印出檢測到的錯誤發生的位置。這就是一個錯誤錯誤處理器(Error Handler)2 為這個錯誤所做的事情。
異常
我們將嘗試(Try)去讀取用戶的輸入內容。按下 [ctrl-d] 來看看會發生什么事情。
>>> s = input('Enter something --> ') Enter something --> Traceback (most recent call last): File "<stdin>", line 1, in <module>EOFError
此處 Python 指出了一個稱作 EOFError 的錯誤,代表著它發現了一個文件結尾(End of File)符號(由 ctrl-d 實現)在不該出現的時候出現了。
處理異常
我們可以通過使用 try..except 來處理異常狀況。一般來說我們會把通常的語句放在 try 代碼塊中,將我們的錯誤處理器代碼放置在 except 代碼塊中。
案例(保存文 exceptions_handle.py):
try: text = input('Enter something --> ') except EOFError: print('Why did you do an EOF on me?') except KeyboardInterrupt: print('You cancelled the operation.') else: print('You entered {}'.format(text))
輸出
# Press ctrl + d $ python exceptions_handle.py Enter something --> Why did you do an EOF on me? # Press ctrl + c $ python exceptions_handle.py Enter something --> ^CYou cancelled the operation. $ python exceptions_handle.py Enter something --> No exceptions You entered No exceptions
關于Python中異常處理的方式就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。