原創(chuàng)|使用教程|編輯:郝浩|2013-10-17 10:24:57.000|閱讀 536 次
概述:
Wing IDE具有一個十分有用的特性,就是處理復(fù)雜bug的時候可以以各種各樣的方式查看調(diào)試數(shù)據(jù)值。這個功能具體是由Watch工具實(shí)現(xiàn)的。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
Wing IDE具有一個十分有用的特性,就是處理復(fù)雜bug的時候可以以各種各樣的方式查看調(diào)試數(shù)據(jù)值。這個功能具體是由Watch工具實(shí)現(xiàn)的:

查看數(shù)據(jù)值
在PrintAsHTML中發(fā)生異常時,右鍵單擊Stack Data工具中的本地數(shù)值。這將顯示以下選項,可隨著時間的變化查看數(shù)值:
Watch by Symbolic Path——將導(dǎo)致Wing IDE在當(dāng)前堆棧中尋找?guī)в蟹柮Q的消息。當(dāng)你選擇這個選項時,Watch面板將會顯示一個條目:
news <list 0x40401eec>
(對象ID當(dāng)然會有所不同)
可用于快速訪問數(shù)值,無需在Stack Data視圖中挖掘很長的本地或者全局變量列表。
由于在調(diào)試會話中具有郵儲,所以在用戶清除之前都將被記錄在Watch工具中。
Watch by Direct Reference——這導(dǎo)致Wing IDE對特定對象實(shí)例(列表)保持一個引用。它將被即時顯示在Watch工具中。如果對象實(shí)例的引用計數(shù)為零,Wing IDE將報告<value not found>。
這對于在調(diào)試不帶有引用或者是無法到達(dá)引用實(shí)例的代碼部分時查看對象是非常有用的。
由于對象引用在調(diào)試會話時是沒有意義的,所以一旦調(diào)試進(jìn)程終止這些條目將從Watch工具中刪除。
Watch by Parent Slot -- 結(jié)合了上述兩種模式,通過對所選擇的值的源部分保證一個引用和通過符號名稱查找子部分來實(shí)現(xiàn)。
如果在本地事件中進(jìn)行嘗試,用戶將在看價值在特定的本地目錄中查看值,而不是在當(dāng)前堆棧框架的事件中。
這種技術(shù)在工作于面向?qū)ο蟮拇a時非常有用,它可以用來觀察特定的對象實(shí)例的特定屬性。
由于源部分被對象引用追蹤,一旦調(diào)試過程結(jié)束,這些條目也將從Watch工具中清除。
Watch by Module Slot——通過在sys.modules中查找模塊名稱并追蹤值,該選項可以用來觀察模塊內(nèi)部的值。該選項只有在右鍵單擊Modules模塊工具的值之后才能進(jìn)行使用。
因?yàn)檫@些在調(diào)試會話過程中會起到作用,所以在被用戶刪除之前將保留在Watch工具中。
查看表達(dá)式
用戶也可以在Watch面板中查看任何Python表達(dá)式。只需點(diǎn)擊Watching列的空白部分,并輸入想要看的表達(dá)式:

在調(diào)試還停留在PrintAsHTML異常的時候,通過輸入:
news[-1]
如果不能確定值,只要有<undefined>或者<error evaluating>的其中一個,就將顯示消息的最后一項。
表達(dá)式將記錄在所有調(diào)試回話的Watch工具中,直到被用戶刪除。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)