国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python traceback 獲取詳細的異常信息

_Suqin / 684人閱讀

摘要:中用于處理異常棧的模塊是模塊,它提供了等輸出異常棧等常用的工具函數。其實函數只是函數的一個簡寫形式,而它們獲取異常相關的數據都是通過函數得到的。即與效果是一樣的。我的博客即將搬運同步至騰訊云社區,邀請大家一同入駐

python中用于處理異常棧的模塊是traceback模塊,它提供了print_exception、format_exception等輸出異常棧等常用的工具函數。

應用實例
try:  
    1/0  
except Exception,e:  
    print e
    

輸出結果是

integer division or modulo by zero

只知道是報了這個錯,但是卻不知道在哪個文件哪個函數哪一行報的錯。

使用 traceback 模塊
import traceback  
try:  
    1/0  
except Exception,e:  
    traceback.print_exc()  
    

輸出結果是

Traceback (most recent call last):
File "test_traceback.py", line 3, in 
1/0
ZeroDivisionError: integer division or modulo by zero

這樣非常直觀有利于調試。
其實traceback.print_exc()函數只是traceback.print_exception()函數的一個簡寫形式,而它們獲取異常相關的數據都是通過sys.exc_info()函數得到的。

traceback.print_exc()和traceback.format_exc()區別

format_exc()返回字符串,print_exc()直接給打印出來。
即traceback.print_exc()與print traceback.format_exc()效果是一樣的。
print_exc()還可以接受file參數直接寫入到一個文件。比如
traceback.print_exc(file=open("tb.txt","w+"))
寫入到tb.txt文件中。


我的博客即將搬運同步至騰訊云+社區,邀請大家一同入駐:https://cloud.tencent.com/dev...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41721.html

相關文章

  • 捕獲異常然后再拋出另一個異常正確姿勢

    摘要:下面我們來看一下效果下次需要捕獲一個異常然后再拋出另一個異常的時候大家可以試試本文的方法。 一般實現捕獲異常然后再拋出另一個異常的方法類似下面這樣: def div(): 2 / 0 try: div() except ZeroDivisionError as e: raise ValueError(e) 不知道大家有沒有注意到這樣拋出異常的方式有一個很嚴重的...

    RebeccaZhong 評論0 收藏0
  • Python2.x 字符編碼終極指南

    摘要:值得注意的是,有的編碼方案不一定能表示某些信息,這時編碼就會失敗,比如就不能用來表示中文。數組的每一項是一個字節,用來表示。所以對于字符串來說,其長度等于編碼后字節的長度。所以,讓來編碼解碼中文,就超出了其能力范圍。 在人機交互之字符編碼 一文中對字符編碼進行了詳細的討論,并通過一些簡單的小程序驗證了我們對于字符編碼的認識。但僅了解這篇文章的內容,并不能幫我們在日常編程中躲過一些字符編...

    Amio 評論0 收藏0
  • python模塊之sys

    摘要:返回的信息特定于當前線程以及當前堆棧幀。出于某些原因,這個值可能無法計算,將返回返回安卓版本的構建時間,以整數表示。僅適用于安卓平臺返回解釋器的檢查間隔。可操作此屬性實現強制重新加載模塊等。 sys模塊提供對由解釋器使用或維護的某些變量、與解釋器交互的函數的訪問接口。 sys.abiflags 在使用標準configure腳本構建python的POSIX系統上,該屬性包含了PEP 31...

    csRyan 評論0 收藏0
  • 調試和分析Python腳本

    摘要:調試器可幫助程序員分析完整的代碼。我們將使用標準庫中的模塊調試我們的腳本。例外是程序執行期間發生的錯誤。設置斷點并檢查堆棧幀,并列出源代碼。輸入以繼續調試。分析和計時程序分析程序意味著測量程序的執行時間。的模塊用于分析程序。 showImg(https://segmentfault.com/img/remote/1460000018807029?w=902&h=442); 來源 | ...

    wenzi 評論0 收藏0
  • raise 與 raise ... from 區別

    摘要:處理異常時發生了新的異常,在不使用時更傾向于新異常與正在處理的異常沒有關聯。而則是能指出新異常是因舊異常直接引起的。這樣的異常之間的關聯有助于后續對異常的分析和排查。若要忽略上下文,則可以通過來禁止自動顯示異常上下文。 起步 Python 的 raise 和 raise from 之間的區別是什么? try: print(1 / 0) except Exception as e...

    sPeng 評論0 收藏0

發表評論

0條評論

_Suqin

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<