Python編程中異常處理是怎樣的
今天小編要跟大家分享的文章是Python編程中異常的處理是怎樣的?上邊兩講我們學習了Python編程中的break(強制退出)和continue(中斷本次循環,進入下次循環),你還記得嗎? Python入門新手和正在Python學習的小伙伴快來看一看吧,希望能夠對大家有所幫助 !
這一講,我們學習異常處理的相關內容,相信大家都有碰到過異常束手無策的時候,看看今天是否可以給你些新的思路新的解決辦法吧:
在程序運行時,如果我們的代碼引發了錯誤,Python就會中斷程序,并且輸出錯誤提示。
比如我們寫了一句:
print int('0.5')
運行后程序得到錯誤提示:
Traceback (most recent call last): File "C:/Python27/test.py", line 1, in <module> print int('0.5') ValueError: invalid literal for int() with base 10: '0.5'
意思是,在test.py這個文件,第1行,print int('0.5')這里,你拿了一個不是10進制能夠表示的字符,我沒法把它轉成int值。
上面的錯誤可以避免,但在實際的應用中,有很多錯誤是開發者無法控制的,例如用戶輸入了一個不合規定的值,或者需要打開的文件不存在。這些情況被稱作“異?!保粋€好的程序需要能處理可能發生的異常,避免程序因此而中斷。
例如我們去打開一個文件:
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的道路上又堅持了一天,今天所講的異常處理,你學會了嗎?try:- except:-知道如何使用了嗎?
以上就是馬哥教育今天為大家分享的關于Python編程中異常的處理是怎樣的文章,希望本篇文章能夠對正在學習Python和從事Python相關工作的小伙伴們有所幫助,想要了解更多相關知識記得關注馬哥教育官網,每天都會有大量優質內容與大家分享!
聲明:文章來源于網絡,侵刪!