Wing IDE專業的調試探針提供了一種強大的方法來發現和解決複雜的錯誤。這很像Python Shell但允許用戶直接參與進已經暫停的調試程序中:
通過鍵入在剛纔發生異常的地方鍵入下列數值進行嘗試:
news[0][0]
這將輸出第一個消息條目的日期:
接下來,進行如下輸入:
news[0][0] = '2004-06-15'
這是一個在進行調試時改變程序狀態的方法,在測試代碼進行bug修復時非常有用。現在試一試:
PrintAsText(news)
執行函數調用和打印輸出到Debug Probe。注意,從命令輸入Debug Probe得出結果的時候,Debug I/O工具不用於輸入或輸出它結果。所有Debug I/O暫時重新定向到這裏。
注意,Wing IDE在用戶輸入的時候提供自動完成,並在Source Assistant顯示調用簽名和文檔信息。
這是另一種可能性。複製/粘貼或拖放這段代碼到Debug Probe:
def PrintAsHTML(news): for date, event, url in news: print('<p><i>%s</i> <a href="%s">%s</a></p>' % (date, url, event))
這實際上替換了example1.py源文件中PrintAsHTML的buggy定義,所以,用戶現在可以在沒有錯誤的情況下執行:
PrintAsHTML(news)
當修復取決於大量的程序狀態,或需要在調試器中花費很多時間再生的時候十分有用:快速互動的嘗試和多個編輯/調試周期bug替代。