婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Python異常處理中容易犯得錯誤總結

Python異常處理中容易犯得錯誤總結

熱門標簽:孝感營銷電話機器人效果怎么樣 海外網吧地圖標注注冊 騰訊地圖標注沒法顯示 聊城語音外呼系統 南陽打電話機器人 打電話機器人營銷 商家地圖標注海報 ai電銷機器人的優勢 地圖標注自己和別人標注區別

Python異常處理機制

如果try異常處理中存在finally,finally中的代碼總會得到執行

下面例子只是作為演示,不用去糾結業務邏輯

容易犯的錯誤1

看下面的代碼,寫出輸出結果

def dig_dig1():
    while True:
        print("I'm in while loop")
        try:
            print("I'm in try")
            raise EOFError
        except IOError:
            print("IOEoor")
        finally:
            print("I'm in finally")
            break


dig_dig1()

原以為會輸出的結果:

I'm in while loop
I'm in try
I'm in finally
EOFError

Process finished with exit code 1

運行結果

I'm in while loop
I'm in try
I'm in finally

Process finished with exit code 0
  1. 如果異常處理中存在finally, finally總會被執行;
  2. 那么在執行finally之前,try中的產生的異常將會被臨時保存起來,當finally的代碼執行完成后,再拋出異常;
  3. 但當finally中存在raise或return或break時, try中的異常將會被拋棄。

容易犯的錯誤2

看下面的代碼,寫出輸出結果

def dig_dig2(index):
    try:
        print("I'm in try")
        if index  0:
            raise IndexError
        else:
            return index
    except IndexError:
        print("I'm in except")
        return "except"
    finally:
        print("I'm in finally")
        return "finally"


print(dig_dig2(12))

原以為會輸出的結果:

I'm in try
12

運行結果

I'm in try
I'm in finally
finally

Process finished with exit code 0
  1. 如果異常處理中存在finally, finally總會被執行。
  2. 如果在try塊語句中存在return的同時又存在finally塊語句,那么將會在執行try塊語句中return語句之前去執行finally語句塊,然后再回來執行try塊語句中return語句。
  3. 但是例子中在finally塊語句中存在return語句,整個函數已結束,所以try塊語句中return語句將永遠得不到執行。

總結

一般情況下,如果異常處理中存在finally, finally總會被執行。但是,存在以下情況就需要注意:

  1. 在執行finally之前,try中的產生的異常將會被臨時保存起來,當finally的代碼執行完成后,再拋出異常; 但當finally中存在raise或return或break時, try中的異常將會被拋棄。
  2. 如果在try塊語句中存在return的同時又存在finally塊語句,那么將會在執行try塊語句中return語句之前去執行finally語句塊,然后再回來執行try塊語句中return語句。但是在finally塊語句中存在return語句,整個函數已結束,所以try塊語句中return語句將永遠得不到執行。

以上就是Python異常處理中容易犯得錯誤總結的詳細內容,更多關于python 異常處理的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • 淺談python中的錯誤與異常
  • Python基礎之語法錯誤和異常詳解
  • Python運行錯誤異常代碼含義對照表
  • 新手常見Python錯誤及異常解決處理方案
  • 使用Python將Exception異常錯誤堆棧信息寫入日志文件
  • Python學習筆記之錯誤和異常及訪問錯誤消息詳解
  • Python 錯誤和異常小結
  • Python錯誤和異常總結詳細

標簽:牡丹江 迪慶 南寧 撫州 揚州 六盤水 楊凌 聊城

巨人網絡通訊聲明:本文標題《Python異常處理中容易犯得錯誤總結》,本文關鍵詞  Python,異常,處理,中容,易犯,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python異常處理中容易犯得錯誤總結》相關的同類信息!
  • 本頁收集關于Python異常處理中容易犯得錯誤總結的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 长垣县| 吉木乃县| 琼中| 章丘市| 大足县| 镇远县| 柳林县| 丰原市| 邢台县| 灵石县| 三明市| 台北市| 临高县| 南开区| 鹤岗市| 苍溪县| 西充县| 镇坪县| 邢台市| 仁寿县| 丰都县| 孝昌县| 龙口市| 内乡县| 沈阳市| 惠州市| 喀喇沁旗| 淮南市| 旌德县| 崇义县| 栾城县| 陇南市| 同江市| 上林县| 六盘水市| 饶阳县| 迁安市| 梨树县| 三河市| 祁连县| 常德市|