最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2020年08月03日 16:44:50   作者:David Beazley  
這篇文章主要介紹了Python 捕獲代碼中所有異常的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下

問(wèn)題

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

解決方案

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

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

這個(gè)將會(huì)捕獲除了 SystemExit 、 KeyboardInterruptGeneratorExit 之外的所有異常。 如果你還想捕獲這三個(gè)異常,將 Exception 改成 BaseException 即可。

討論

捕獲所有異常通常是由于程序員在某些復(fù)雜操作中并不能記住所有可能的異常。 如果你不是很細(xì)心的人,這也是編寫(xiě)不易調(diào)試代碼的一個(gè)簡(jiǎn)單方法。

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

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

試著運(yùn)行這個(gè)函數(shù),結(jié)果如下:

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

這時(shí)候你就會(huì)撓頭想:“這咋回事啊?” 假如你像下面這樣重寫(xiě)這個(gè)函數(shù):

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

這時(shí)候你能獲取如下輸出,指明了有個(gè)編程錯(cuò)誤:

>>> parse_int('42')
Couldn't parse
Reason: global name 'v' is not defined
>>>

很明顯,你應(yīng)該盡可能將異常處理器定義的精準(zhǔn)一些。 不過(guò),要是你必須捕獲所有異常,確保打印正確的診斷信息或?qū)惓鞑コ鋈?,這樣不會(huì)丟失掉異常。

以上就是Python 捕獲代碼中所有異常的方法的詳細(xì)內(nèi)容,更多關(guān)于Python 捕獲異常的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 我對(duì)PyTorch dataloader里的shuffle=True的理解

    我對(duì)PyTorch dataloader里的shuffle=True的理解

    這篇文章主要介紹了我對(duì)PyTorch dataloader里的shuffle=True的理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 教你用Python寫(xiě)一個(gè)水果忍者小游戲

    教你用Python寫(xiě)一個(gè)水果忍者小游戲

    水果忍者游戲,又稱切水果游戲,玩法簡(jiǎn)單,水果忍者游戲在兒童中很受歡迎,下面這篇文章主要給大家介紹了關(guān)于如何利用Python寫(xiě)一個(gè)水果忍者小游戲的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • Python API 操作Hadoop hdfs詳解

    Python API 操作Hadoop hdfs詳解

    這篇文章主要介紹了Python API 操作Hadoop hdfs詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python實(shí)現(xiàn)中值濾波去噪方式

    Python實(shí)現(xiàn)中值濾波去噪方式

    今天小編就為大家分享一篇Python實(shí)現(xiàn)中值濾波去噪方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • gethostbyaddr在Python3中引發(fā)UnicodeDecodeError

    gethostbyaddr在Python3中引發(fā)UnicodeDecodeError

    本文介紹了gethostbyaddr()在Python?3中引發(fā)UnicodeDecodeError的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-05-05
  • Python幫你解決手機(jī)qq微信內(nèi)存占用太多問(wèn)題

    Python幫你解決手機(jī)qq微信內(nèi)存占用太多問(wèn)題

    你有沒(méi)有發(fā)現(xiàn)以前16G內(nèi)存也可以裝幾個(gè)游戲玩,現(xiàn)在128G的卻日常使用都不夠了?更不用說(shuō)裝什么游戲,這其實(shí)是軟件內(nèi)存占用過(guò)多導(dǎo)致的,今天我們用python來(lái)清理下
    2022-02-02
  • Python Excel處理庫(kù)openpyxl詳解

    Python Excel處理庫(kù)openpyxl詳解

    這篇文章主要介紹了Python Excel處理庫(kù)openpyxl詳解,需要的朋友可以參考下
    2021-05-05
  • 為什么Python中沒(méi)有

    為什么Python中沒(méi)有"a++"這種寫(xiě)法

    一開(kāi)始學(xué)習(xí) Python 的時(shí)候習(xí)慣性的使用 C 中的 a++ 這種寫(xiě)法,發(fā)現(xiàn)會(huì)報(bào) SyntaxError: invalid syntax 錯(cuò)誤,為什么 Python 沒(méi)有自增運(yùn)算符的這種寫(xiě)法呢?下面小編給大家?guī)?lái)本文幫助大家了解下這方面的知識(shí)
    2018-11-11
  • 詳解如何使用Python操作MySQL的各種功能和用法

    詳解如何使用Python操作MySQL的各種功能和用法

    當(dāng)今互聯(lián)網(wǎng)時(shí)代,數(shù)據(jù)處理已經(jīng)成為了一個(gè)非常重要的任務(wù),而MySQL作為一款開(kāi)源的關(guān)系型數(shù)據(jù)庫(kù),被廣泛應(yīng)用于各種場(chǎng)景,本篇博客將介紹如何使用Python操作MySQL的各種功能,以及一些高級(jí)用法,需要的朋友可以參考下
    2023-11-11
  • 利用Python對(duì)哥德巴赫猜想進(jìn)行檢驗(yàn)和推理

    利用Python對(duì)哥德巴赫猜想進(jìn)行檢驗(yàn)和推理

    數(shù)學(xué)是一個(gè)奇妙的東西,對(duì)此,也衍生出了許多的悖論與猜想。這篇文章會(huì)對(duì)哥德巴赫猜想用編程語(yǔ)言進(jìn)行檢驗(yàn)和推理,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-12-12

最新評(píng)論

嘉祥县| 汉川市| 和平区| 武冈市| 南召县| 建始县| 南阳市| 贺兰县| 白银市| 阳朔县| 永定县| 宁都县| 南郑县| 防城港市| 吕梁市| 平潭县| 时尚| 嘉义市| 克拉玛依市| 花莲县| 开鲁县| 安顺市| 临清市| 淮滨县| 浑源县| 若尔盖县| 多伦县| 宜春市| 英超| 兴隆县| 宾阳县| 阳信县| 秀山| 观塘区| 青河县| 手游| 年辖:市辖区| 基隆市| 吴川市| 鹿泉市| 资中县|