1、準(zhǔn)備工作 ?。?)Pycharm版本為3.0或者更高版本 (2)至少安裝了一個Python解釋器并且已經(jīng)正確配置 ?。?)已經(jīng)創(chuàng)建了一個python工程 2、主要內(nèi)容 介紹如何通過Pycharm來調(diào)試腳本文件,以及各個工具按鈕的作用等等,至于Python編程方法,請參見Python documentation。 3、待復(fù)習(xí)知識 為了完成本篇教程的內(nèi)容,需要用到前面的兩個重要知識點(diǎn): ?。?)Run/debug配置文件的相關(guān)知識 (2)斷點(diǎn)的相關(guān)知識 4、Run/debug 配置知識 每當(dāng)你通過Pycharm來運(yùn)行或者調(diào)試一個腳本文件時,都需要一個特殊的文件來記錄腳本的名稱、工作目錄以及其他的重要調(diào)試信息。Pycharm已經(jīng)針對特定模式預(yù)先創(chuàng)建好了配置文件,避免我們手動去創(chuàng)建。 每次你單擊運(yùn)行或者調(diào)試按鈕時(或者通過快捷菜單執(zhí)行相同的操作),我們實(shí)際上都是在當(dāng)前工作模式中加載了對應(yīng)的配置文件。詳見product documentation。 5、斷點(diǎn) 一個斷點(diǎn)標(biāo)記了一個代碼行,當(dāng)Pycharm運(yùn)行到該行代碼時會將程序暫時掛起。Pycharm提供了幾種形式的斷點(diǎn) types of breakpoints,其圖標(biāo) icon各不相同。詳見 product documentation中的Breakpoints tutorial。 6、實(shí)例 在你的Python工程中,創(chuàng)建一個新的Python文件,命名為ThreadSample.py,然后輸入以下代碼: 7、設(shè)置斷點(diǎn) 首先,在源碼中設(shè)置斷點(diǎn)。通過單擊代碼左側(cè)的空白槽來在對應(yīng)位置生成斷點(diǎn): 8、開始調(diào)試 選擇 run/debug configuration "ThreadSample",然后按下Shift+F9(或者單擊工具欄中的綠色蜘蛛形式的按鈕),調(diào)試開始,并在第一個斷點(diǎn)處停止: 斷點(diǎn)所在的行變?yōu)樗{(lán)色,說明Pycharm已經(jīng)擊中了這個斷點(diǎn),但尚未執(zhí)行這行代碼。 9、更改調(diào)試窗口的布局 此時Pycharm進(jìn)入調(diào)試界面模式Debug tool window,各個控件的具體功能詳見know how to use this tool window。 加入你并不喜歡當(dāng)前的默認(rèn)布局,例如你希望將調(diào)試器輸出窗口作為一個獨(dú)立的窗口顯示以便更方便的觀察當(dāng)前的調(diào)試狀態(tài),你可以對布局進(jìn)行個性化定制。 首先,我們先把調(diào)試工具窗口獨(dú)立出來,只需要右擊窗口的標(biāo)題欄,然后選擇Floating mode: 接下來將控制臺窗口移動成為一個獨(dú)立的窗口,只需要拖動控制臺窗口將其拖出測試窗口即可: 可以通過單擊工具欄上的 更多信息請參見PyCharm Tool Windows和Moving tabs and area 10、添加一個變量查看器 接下來我們介紹如何在調(diào)試過程中觀察變量的狀態(tài)。我們需要對其設(shè)置一個查看器。在Watches窗口中,單擊綠色的加號,輸入期望查看的變量名稱,例如這里輸入delay,然后回車。當(dāng)然你也可以采用另外一種方式:在編輯窗口中右擊變量名,在快捷菜單中選擇Add to watches: 此時觀察Watches窗口,發(fā)現(xiàn)delay變量目前尚未定義: 稍后你將會看到如何對這個變量進(jìn)行負(fù)值,以及其在watches窗口中的變化。接下來我們?yōu)間et_thread_name()函數(shù)設(shè)置一個查看器作為練習(xí)。 11、瀏覽幀 此時你能看到一個名為MainThread的進(jìn)程,其中包含三幀。單擊每一幀來顯示其變量狀態(tài)以及相對應(yīng)的py文件,同時會對有問題的代碼行以高亮顯示: 12、簡單的調(diào)試 在每個斷點(diǎn)出都單擊 13、步進(jìn)式腳本調(diào)試 讓我們對當(dāng)前腳本進(jìn)行進(jìn)一步的調(diào)試。單擊 在調(diào)試窗口的頂端,你會看到一列包含步進(jìn)調(diào)試按鈕的工具欄 stepping buttons。 單擊 與此同時,當(dāng)你暫停了腳本執(zhí)行時(單擊 14、運(yùn)行到當(dāng)前光標(biāo)處 假如你不想加入斷點(diǎn),但仍希望代碼能夠調(diào)試運(yùn)行到某一指定的代碼行,如何操作? 返回調(diào)試界面的第二個斷點(diǎn)處,在對應(yīng)行插入輸入光標(biāo)。 單擊 15、如何調(diào)用Debug命令 值得一提的是所有的調(diào)試操作不僅僅可以通過調(diào)試工具欄的對應(yīng)按鈕來完成,還可以通過主菜單中Run菜單下的命令來實(shí)現(xiàn),以及相關(guān)的快捷菜單項(xiàng)。下面給出一些常用的調(diào)試菜單命令及其對應(yīng)的快捷鍵列表:
更多控件描述參見Debug tool window。 |
|