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

您的位置:首頁技術文章
文章詳情頁

Python 捕獲代碼中所有異常的方法

瀏覽:122日期:2022-07-15 11:01:57

問題

怎樣捕獲代碼中的所有異常?

解決方案

想要捕獲所有的異常,可以直接捕獲 Exception 即可:

try: ...except Exception as e: ... log(’Reason:’, e) # Important!

這個將會捕獲除了 SystemExit 、 KeyboardInterrupt 和 GeneratorExit 之外的所有異常。 如果你還想捕獲這三個異常,將 Exception 改成 BaseException 即可。

討論

捕獲所有異常通常是由于程序員在某些復雜操作中并不能記住所有可能的異常。 如果你不是很細心的人,這也是編寫不易調試代碼的一個簡單方法。

正因如此,如果你選擇捕獲所有異常,那么在某個地方(比如日志文件、打印異常到屏幕)打印確切原因就比較重要了。 如果你沒有這樣做,有時候你看到異常打印時可能摸不著頭腦,就像下面這樣:

def parse_int(s): try: n = int(v) except Exception: print('Couldn’t parse')

試著運行這個函數,結果如下:

>>> parse_int(’n/a’)Couldn’t parse>>> parse_int(’42’)Couldn’t parse>>>

這時候你就會撓頭想:“這咋回事啊?” 假如你像下面這樣重寫這個函數:

def parse_int(s): try: n = int(v) except Exception as e: print('Couldn’t parse') print(’Reason:’, e)

這時候你能獲取如下輸出,指明了有個編程錯誤:

>>> parse_int(’42’)Couldn’t parseReason: global name ’v’ is not defined>>>

很明顯,你應該盡可能將異常處理器定義的精準一些。 不過,要是你必須捕獲所有異常,確保打印正確的診斷信息或將異常傳播出去,這樣不會丟失掉異常。

以上就是Python 捕獲代碼中所有異常的方法的詳細內容,更多關于Python 捕獲異常的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 中文字幕在线视频观看 | 波多野结衣在线观看一区二区 | 国产成人精品一区二区 | 欧美日韩精品一区二区在线播放 | 国产精自产拍久久久久久蜜 | 国产一区二区三区在线视频 | 欧美三级韩国三级日本三斤在线观看 | 在线不卡一区二区 | 久草福利视频 | 婷婷激情综合网 | 亚洲免费一区二区 | 亚洲精品成人网 | 欧美精品系列 | 国产黄色免费 | 色影视 | 欧美一区二区三区在线 | 亚洲iv一区二区三区 | 国产a视频| 国产美女自拍视频 | 美女免费网站 | 国产日韩综合 | 免费观看全黄做爰视频 | 特级做a爱片免费69 伊人超碰在线 | 日本久久网站 | 一级特黄视频 | 国产精品久久久久久中文字 | 国产丝袜视频 | 毛片毛片毛片毛片毛片 | 久久精品一区二区 | 国产精品久久久久久久午夜 | 91亚洲一区 | 欧美网站在线观看 | 久久香蕉网 | 中文字幕一区二区三区在线观看 | 黄色录像大片 | 日韩午夜在线观看 | 欧美在线网址 | av大片在线观看 | 在线观看小视频 | 成人看片网站 | 成人免费视频一区二区 |