av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Python運(yùn)行異常管理解決方案

瀏覽:6日期:2022-08-03 10:23:18

1 前言

Python使用被稱為異常的特殊對象來管理程序執(zhí)行期間發(fā)生的錯(cuò)誤。每當(dāng)發(fā)生讓Python不知所措的錯(cuò)誤時(shí),它都會創(chuàng)建一個(gè)異常對象。

如果你編寫了處理該異常的代碼,程序?qū)⒗^續(xù)運(yùn)行;如果你未對異常進(jìn)行處理,程序?qū)⑼V梗@示一個(gè)traceback,其中包含有關(guān)異常的報(bào)告。

異常是使用try-except代碼塊處理的。try-except代碼塊讓Python執(zhí)行指定的操作,同時(shí)告訴Python發(fā)生異常時(shí)怎么辦。

使用了try-except代碼塊時(shí),即便出現(xiàn)異常,程序也將繼續(xù)運(yùn)行。

2 運(yùn)用try-except代碼塊

我們知道,除數(shù)是不能為0的,當(dāng)程序員誤將除數(shù)設(shè)置為0時(shí),將會出現(xiàn)ZeroDivisionError錯(cuò)誤。

實(shí)現(xiàn)代碼:

try: print(6/0) except ZeroDivisionError: print('you can not divide by zero!')

運(yùn)行結(jié)果:

you can not divide by zero!

工作原理:

將可能出現(xiàn)錯(cuò)誤的代碼放在try代碼塊中,如果運(yùn)行無錯(cuò)誤,將跳過except代碼塊;若導(dǎo)致了錯(cuò)誤,Python將查找except代碼塊,并執(zhí)行其中的代碼。

這樣一來,當(dāng)運(yùn)行出錯(cuò)時(shí),用戶看到的便是一條友好的錯(cuò)誤信息。

若try-except后面還有其他代碼,那么程序?qū)⒔又\(yùn)行。

3 運(yùn)用try-except-else代碼塊

實(shí)現(xiàn)代碼:

print('Please input two numbers, and I will divide them.')print('Enter ’q’ to quit.')while True: first_num = input('nFirst number: ') if first_num == ’q’: break second_num = input('Second number: ') try: answer = int(first_num) / int(second_num) except ZeroDivisionError: print('you can not divide by zero!') else: print(answer)

運(yùn)行結(jié)果:

Python運(yùn)行異常管理解決方案

工作原理:

一般地,將可能發(fā)生異常的代碼放在try代碼塊中。

Python嘗試執(zhí)行try代碼塊中代碼,如果發(fā)生錯(cuò)誤,則執(zhí)行except中程序代碼;如果運(yùn)行正常,則執(zhí)行else代碼塊中的代碼。

這樣一來,就有效地避免了可能發(fā)生的錯(cuò)誤帶來的程序崩潰問題,讓程序變得更加健壯。

4 運(yùn)用pass語句

實(shí)現(xiàn)代碼:

while True: first_num = input('nFirst number: ') if first_num == ’q’: break second_num = input('Second number: ') try: answer = int(first_num) / int(second_num) except ZeroDivisionError: pass else: print(answer)

運(yùn)行結(jié)果:

Python運(yùn)行異常管理解決方案

工作原理:

10 當(dāng)代碼執(zhí)行出錯(cuò)時(shí),Python將會執(zhí)行except代碼塊中的pass語句。pass語句既不會出現(xiàn)traceback,也沒有任何輸出。

此外,pass語句還可充當(dāng)占位符,用于提醒程序員該處還未定義任何語句,后面可能會定義語句。

5 小結(jié)

到這里,我們就了解了一些處理異常的方式,我們可以根據(jù)不同的需求,決定是否向用戶報(bào)告錯(cuò)誤以及怎樣報(bào)告錯(cuò)誤,有效地避免一些異常帶來的程序崩潰。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产欧美日韩综合精品 | 黄色一级免费视频 | 亚洲第一综合 | a视频在线免费观看 | 一区二区三区在线免费 | 日韩成人在线观看 | 亚洲成人中文字幕 | 97在线免费视频 | 欧美黄色片网站 | 欧美又粗又长 | 亚洲成人免费在线 | 成人在线观看免费爱爱 | 午夜视频一区二区三区 | 久久久久久久久久国产 | 免费在线观看毛片 | 日韩精品视频在线免费观看 | 亚洲综合激情网 | 欧美日韩a | 日韩毛片网 | 亚洲狠狠 | 亚洲欧美综合另类 | 亚洲一区二区三区 | 亚洲黄色录像 | 欧美日韩在线精品 | 五月天毛片 | 亚洲h网站 | 亚洲h网站 | 日韩综合在线观看 | 亚洲福利在线观看 | 日日干日日干 | 欧美色综合网 | 中文字幕在线免费播放 | 老女人性生活视频 | 久久都是精品 | 999在线视频 | 亚洲精品免费观看 | 国产精品欧美一区二区 | 深夜福利网址 | 免费看一级黄色片 | 极品新婚夜少妇真紧 | 国产精品乱 |