創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
小編給大家分享一下python處理錯(cuò)誤和異常的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
異常
當(dāng)你的程序出現(xiàn)例外情況時(shí)就會發(fā)生異常(Exception)。例如,當(dāng)你想要讀取一個(gè)文件時(shí),而那個(gè)文件卻不存在,怎么辦?又或者你在程序執(zhí)行時(shí)不小心把它刪除了,怎么辦?這些通過使用異常來進(jìn)行處理。類似地,如果你的程序中出現(xiàn)了一些無效的語句該怎么辦?Python 將會對此進(jìn)行處理,舉起(Raises)它的小手來告訴你哪里出現(xiàn)了一個(gè)錯(cuò)誤(Error)。
錯(cuò)誤
你可以想象一個(gè)簡單的 print 函數(shù)調(diào)用。如果我們把 print 誤拼成 Print 會怎樣?你會注意到它的首字母是大寫。在這一例子中,Python 會拋出(Raise)一個(gè)語法錯(cuò)誤。
>>> 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
你會注意到一個(gè) NameError 錯(cuò)誤被拋出,同時(shí) Python 還會打印出檢測到的錯(cuò)誤發(fā)生的位置。這就是一個(gè)錯(cuò)誤錯(cuò)誤處理器(Error Handler)2 為這個(gè)錯(cuò)誤所做的事情。
異常
我們將嘗試(Try)去讀取用戶的輸入內(nèi)容。按下 [ctrl-d] 來看看會發(fā)生什么事情。
>>> s = input('Enter something --> ') Enter something --> Traceback (most recent call last): File "<stdin>", line 1, in <module>EOFError
此處 Python 指出了一個(gè)稱作 EOFError 的錯(cuò)誤,代表著它發(fā)現(xiàn)了一個(gè)文件結(jié)尾(End of File)符號(由 ctrl-d 實(shí)現(xiàn))在不該出現(xiàn)的時(shí)候出現(xiàn)了。
處理異常
我們可以通過使用 try..except 來處理異常狀況。一般來說我們會把通常的語句放在 try 代碼塊中,將我們的錯(cuò)誤處理器代碼放置在 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處理錯(cuò)誤和異常的方法有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!
文章題目:python處理錯(cuò)誤和異常的方法-創(chuàng)新互聯(lián)
本文鏈接:http://chinadenli.net/article44/dhpjhe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)公司、網(wǎng)站營銷、品牌網(wǎng)站建設(shè)、虛擬主機(jī)、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容