您好,登錄后才能下訂單哦!
這篇文章主要介紹“Python異常處理相關應用技術有哪些”,在日常操作中,相信很多人在Python異常處理相關應用技術有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python異常處理相關應用技術有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Python異常處理有很強大處理能力,把錯信息的顯示給客戶,在Python異常處理中,可以對其運行操作,下面是我們是對Python異常處理進行的一個詳細的介紹,希望大家瀏覽這篇文章有所收獲。
Python的異常處理能力是很強大的,可向用戶準確反饋出錯信息。在Python中,異常也是對象,可對它進行操作。所有異常都是基類Exception的成員。所有異常都從基類Exception繼承,而且都在exceptions模塊中定義。Python自動將所有異常名稱放在內建命名空間中,所以程序不必導入exceptions模塊即可使用異常。一旦引發而且沒有捕捉SystemExit異常,程序執行就會終止。如果交互式會話遇到一個未被捕捉的SystemExit異常,會話就會終止。
1.使用try和except語句來捕獲異常
try: block except [exception,[data…]]: block try: block except [exception,[data...]]: block else: block
該種 Python異常處理語法的規則是:
◆執行try下的語句,如果引發異常,則執行過程會跳到***個except語句。
◆如果***個except中定義的異常與引發的異常匹配,則執行該except中的語句。
◆如果引發的異常不匹配***個except,則會搜索第二個except,允許編寫的except數量沒有限制。
◆如果所有的except都不匹配,則異常會傳遞到下一個調用本代碼的***層try代碼中。
◆如果沒有發生異常,則執行else塊代碼。
例:
try: f = open(“file.txt”,”r”) except IOError, e: print e
捕獲到的IOError錯誤的詳細原因會被放置在對象e中,然后運行該異常的except代碼塊
捕獲所有的異常
try: a=b b=c except Exception,ex: print Exception,":",ex
2.使用try跟finally:
語法如下:
try: block finally: block
3. 用raise語句手工引發一個異常:
raise [exception[,data]]
在Python中,要想引發異常,最簡單的形式就是輸入關鍵字raise,后跟要引發的異常的名稱。異常名稱標識出具體的類: Python異常處理是那些類的對象。執行raise語句時,Python會創建指定的異常類的一個對象。raise語句還可指定對異常對象進行初始化的參數。為此,請在異常類的名稱后添加一個逗號以及指定的參數(或者由參數構成的一個元組)。
例:
try: raise MyError #自己拋出一個異常 except MyError: print 'a error' raise ValueError,’invalid argument’
捕捉到的內容為:
type = VauleError message = invalid argument
4. 采用traceback(跟蹤)模塊查看異常
try:
block
except:
traceback.print_exc()
示例:…excpetion/traceback.py
5. 采用sys模塊回溯***的異常
或者以如下的形式:
import sys tp,val,td = sys.exc_info() sys.exc_info()的返回值是一個tuple, (type, value/message, traceback)
探秘Python對象體系
用Python標準庫修改搜索引擎獲取結果
Python編程在Nginx中的使用方法
Python腳本在VIM環節中的系統介紹
python處理文本如何在vim中使用
這里的type ---- 異常的類型
value/message ---- 異常的信息或者參數
traceback ---- 包含調用棧信息的對象。
從這點上可以看出此方法涵蓋了traceback.
6. 異常處理的一些其它用途
除了處理實際的錯誤條件之外,對于 Python異常處理還有許多其它的用處。在標準 Python 庫中一個普通的用法就是試著導入一個模塊,然后檢查是否它能使用。導入一個并不存在的模塊將引發一個 ImportError 異常。你可以使用這種方法來定義多級別的功能――依靠在運行時哪個模塊是有效的,或支持多種平臺 (即平臺特定代碼被分離到不同的模塊中)。
你也能通過創建一個從內置的 Exception 類繼承的類定義你自己的異常,然后使用 raise 命令引發你的異常
到此,關于“Python異常處理相關應用技術有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。