精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python中的異常機制(一)

麥辣雞腿堡 ? 來源:python都知道 ? 作者:了不起 ? 2023-05-11 18:17 ? 次閱讀

前言

哈嘍, 大家好, 我是了不起!

歡迎大家來觀看了不起的冒險之旅. 為了方便起見, 文中以小知為名. 講述了不起在Python異世界的冒險之旅.

白天冒險, 晚上學習. 小知可是身體和心理沒有一刻不在路上. 在今夜首先了解什么是異常: 軟件程序在運行過程中,可能會遇到能使其不能正常運行的問題,我們稱之為異常,英文是:Exception . 然后, 我們會了解捕獲異常的四種方式


一、異常是什么


程序在運行過程中發生的意外情況,稱為異常, 程序運行時一旦出現了異常,將會導致程序立即終止,異常之后的代碼將無法繼續執行,所以需要對異常進行處理

異常機制本質

  • 當程序出現異常,程序安全的退出、處理完后繼續執行的機制

python中,引進了很多用來描述和處理異常的類,稱為異常類. 異常類定義中包含了該類異常的信息和對異常進行處理的方法.下面較為完整的展示了python中內建異常類的繼承層次:

pYYBAGRcvAeAQvtzAADTUrtMZEI650.png

解決思路

異常解決的關鍵:定位當發生異常時,解釋器會報相關的錯誤信息,并會在控制臺打印出相關錯誤信息. 我們只需按照從上到下的順序即可追溯(Trackback)錯誤發生的過程,最終定位引起錯誤的哪一行代碼.

實操代碼

#測試簡單的0不能做除數異常

#因為如果假設成立,則說明3/0=0=>可以推導0*0=3,因為結果不成立,因此假設不成立

#a=3/0

defa():

print("runina()start!")

num=1/0

print("runina()end!")

defb():

print("runinb()start!")

a()

print("runinb()end!")

defc():

print("runinc()start!")

b()

print("runinc()end!")

print("step1")

c()

print("step2")

結果輸出

從打印輸出結果來看, 最底層的方法(eg: a())出錯之后, 會在上層調用的方法位置處拋出異常. 因為錯誤信息以棧的形式輸出, 因此最頂層的調用因為先打印, 所以會先被我們看到. 因此對底層/最有用的信息一般位于最下面.

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 程序
    +關注

    關注

    116

    文章

    3775

    瀏覽量

    80846
  • python
    +關注

    關注

    56

    文章

    4782

    瀏覽量

    84449
收藏 人收藏

    評論

    相關推薦

    FEM模擬python異常

    1148,在genericEmdsCall引發異常(文本) 以上來自于谷歌翻譯 以下為原文Hello i gotthe following Python error message when
    發表于 02-14 15:14

    如何使用Python檢測電動機異常情況

    該項目演示如何使用 Python 訓練兩種不同的機器學習模型來檢測電動機異常情況。 第個模型依賴于馬哈拉諾比斯距離的經典機器學習技術。 第二個模型是使用 TensorFlow 和
    發表于 09-08 08:14

    python常見異常類型

    python常見異常類型在程序運行過程,總會遇到各種各樣的問題和錯誤。有些錯誤是我們編寫代碼時自己造成的,比如語法錯誤、調用錯誤,甚至邏輯錯誤。下面這個例子,在輸入 if 后輸入回車了,沒有按照
    發表于 03-04 16:59

    python如何主動拋出異常和捕獲異常

    關鍵字拋出。在 Python 是使用 raise 關鍵字來拋出異常的,比如在下面這個函數,如果不存在目標文件,則會拋出個 Excep
    發表于 03-04 17:10

    Cortex-M3的異常處理機制分析

    Cortex-M3的異常處理機制分析  詳細闡述CortexM3異常的分類、優先級、進入和退出,以及在CortexM3異常處理機制
    發表于 03-29 15:07 ?1990次閱讀
    Cortex-M3的<b class='flag-5'>異常</b>處理<b class='flag-5'>機制</b>分析

    C++異常機制探討

    C++的異常機制為我們提供了更好的解決方法。異常處理的基本思想是:當出現錯誤時拋出異常,希望它的調用者能捕獲并處理這個
    發表于 11-23 11:04 ?3456次閱讀
    C++<b class='flag-5'>異常</b><b class='flag-5'>機制</b>探討

    基于Python 異常的介紹以及異常處理的方法解析

    異常處理在任何門編程語言里都是值得關注的個話題,良好的異常處理可以讓你的程序更加健壯,清晰的錯誤信息更能幫助你快速修復問題。在Python
    的頭像 發表于 01-31 14:20 ?6247次閱讀
    基于<b class='flag-5'>Python</b> <b class='flag-5'>異常</b>的介紹以及<b class='flag-5'>異常</b>處理的方法解析

    基于Greenshield模型的異常節點檢測機制

    面向車輛自組網的安全通信問題,提出種基于Greenshield模型的異常節點檢測機制。結合車輛自組網的特點,構造Greenshield模型,計算車輛速度、車輛密度和車流量參數。在此基礎上依據車輛
    發表于 03-29 09:54 ?0次下載

    C++的異常機制底層原理與實際應用詳細說明

    我們在對 vector 做 push 操作的時候,或者對某個指針做 new 操作的時候,如果沒有做異常處理,旦系統內存不夠用了,程序是會被 terminate 掉的。這就要求我們熟悉 C++ 異常,保證日常開發
    的頭像 發表于 11-22 11:34 ?3158次閱讀

    Python中有哪些常見的錯誤和異常

    python常見異常類型 在程序運行過程,總會遇到各種各樣的問題和錯誤。 有些錯誤是我們編寫代碼時自己造成的,比如語法錯誤、調用錯誤,甚至邏輯錯誤。下面這個例子,在輸入 if 后輸入回車了,沒有
    的頭像 發表于 03-04 16:58 ?4131次閱讀

    python如何捕獲異常和主動拋出異常

    ,使用 raise 關鍵字拋出。 在 Python 是使用 raise 關鍵字來拋出異常的,比如在下面這個函數,如果不存在目標文件,則會拋出
    的頭像 發表于 03-04 17:09 ?9740次閱讀

    Python-模塊、包、異常

    * 程序運行時,如果Python 解釋器遇到了錯誤,會停止程序運行,并且提示錯誤信息,**這就是異常**,* 程序停止執行并提示錯誤信息的動作,稱為 **拋出異常**
    的頭像 發表于 02-16 15:40 ?691次閱讀
    <b class='flag-5'>Python</b>-模塊、包、<b class='flag-5'>異常</b>

    C++程序異常處理機制是什么

    那么C++設計了異常處理機制方面能夠使得異常處理和正常運行代碼進行分離,使得程序更加模塊化;另
    的頭像 發表于 02-21 10:37 ?834次閱讀
    C++程序<b class='flag-5'>異常</b>處理<b class='flag-5'>機制</b>是什么

    Python異常機制(二)

    二、try和except結構 try...個except結構 這種結構是最常見, 也是最常用的結構 語法結構 try: ?被監控的可能引發異常的語句塊 except??BaseException
    的頭像 發表于 05-11 18:20 ?882次閱讀

    arm異常響應和異常返回機制是什么樣子的?

    arm異常響應和異常返回機制是什么樣子的?? ARM是種RISC指令集架構,廣泛用于無線電視、移動電話、嵌入式系統等領域。ARM
    的頭像 發表于 10-19 16:36 ?966次閱讀