溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

發(fā)布時(shí)間:2021-10-13 09:28:58 來源:億速云 閱讀:137 作者:iii 欄目:編程語言

本篇內(nèi)容介紹了“Pycharm調(diào)試器的工作準(zhǔn)備有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

 1、準(zhǔn)備工作

 ?。?)Pycharm版本為3.0或者更高版本

  (2)至少安裝了一個(gè)Python解釋器并且已經(jīng)正確配置

 ?。?)已經(jīng)創(chuàng)建了一個(gè)Python工程

  2、主要內(nèi)容

  介紹如何通過Pycharm來調(diào)試腳本文件,以及各個(gè)工具按鈕的作用等等,至于Python編程方法,請(qǐng)參見Python documentation。

  3、待復(fù)習(xí)知識(shí)

  為了完成本篇教程的內(nèi)容,需要用到前面的兩個(gè)重要知識(shí)點(diǎn):

 ?。?)Run/debug配置文件的相關(guān)知識(shí)

  (2)斷點(diǎn)的相關(guān)知識(shí)

  4、Run/debug 配置知識(shí)

  每當(dāng)你通過Pycharm來運(yùn)行或者調(diào)試一個(gè)腳本文件時(shí),都需要一個(gè)特殊的文件來記錄腳本的名稱、工作目錄以及其他的重要調(diào)試信息。Pycharm已經(jīng)針對(duì)特定模式預(yù)先創(chuàng)建好了配置文件,避免我們手動(dòng)去創(chuàng)建。

  每次你單擊運(yùn)行或者調(diào)試按鈕時(shí)(或者通過快捷菜單執(zhí)行相同的操作),我們實(shí)際上都是在當(dāng)前工作模式中加載了對(duì)應(yīng)的配置文件。詳見product documentation。

  5、斷點(diǎn)

  一個(gè)斷點(diǎn)標(biāo)記了一個(gè)代碼行,當(dāng)Pycharm運(yùn)行到該行代碼時(shí)會(huì)將程序暫時(shí)掛起。Pycharm提供了幾種形式的斷點(diǎn) types of breakpoints,其圖標(biāo) icon各不相同。詳見 product documentation中的Breakpoints tutorial。

  6、實(shí)例

  在你的Python工程中,創(chuàng)建一個(gè)新的Python文件,命名為ThreadSample.py,然后輸入以下代碼:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  7、設(shè)置斷點(diǎn)

  首先,在源碼中設(shè)置斷點(diǎn)。通過單擊代碼左側(cè)的空白槽來在對(duì)應(yīng)位置生成斷點(diǎn):

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  8、開始調(diào)試

  選擇 run/debug configuration "ThreadSample",然后按下Shift+F9(或者單擊工具欄中的綠色蜘蛛形式的按鈕),調(diào)試開始,并在第一個(gè)斷點(diǎn)處停止:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  斷點(diǎn)所在的行變?yōu)樗{(lán)色,說明Pycharm已經(jīng)擊中了這個(gè)斷點(diǎn),但尚未執(zhí)行這行代碼。

  9、更改調(diào)試窗口的布局

  此時(shí)Pycharm進(jìn)入調(diào)試界面模式Debug tool window,各個(gè)控件的具體功能詳見know how to use this tool window。

  加入你并不喜歡當(dāng)前的默認(rèn)布局,例如你希望將調(diào)試器輸出窗口作為一個(gè)獨(dú)立的窗口顯示以便更方便的觀察當(dāng)前的調(diào)試狀態(tài),你可以對(duì)布局進(jìn)行個(gè)性化定制。

  首先,我們先把調(diào)試工具窗口獨(dú)立出來,只需要右擊窗口的標(biāo)題欄,然后選擇Floating mode:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  接下來將控制臺(tái)窗口移動(dòng)成為一個(gè)獨(dú)立的窗口,只需要拖動(dòng)控制臺(tái)窗口將其拖出測(cè)試窗口即可:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  可以通過單擊工具欄上的按鈕來恢復(fù)到默認(rèn)布局。

  更多信息請(qǐng)參見PyCharm Tool Windows和Moving tabs and area

  10、添加一個(gè)變量查看器

  接下來我們介紹如何在調(diào)試過程中觀察變量的狀態(tài)。我們需要對(duì)其設(shè)置一個(gè)查看器。在Watches窗口中,單擊綠色的加號(hào),輸入期望查看的變量名稱,例如這里輸入delay,然后回車。當(dāng)然你也可以采用另外一種方式:在編輯窗口中右擊變量名,在快捷菜單中選擇Add to watches:

  此時(shí)觀察Watches窗口,發(fā)現(xiàn)delay變量目前尚未定義:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  稍后你將會(huì)看到如何對(duì)這個(gè)變量進(jìn)行負(fù)值,以及其在watches窗口中的變化。接下來我們?yōu)間et_thread_name()函數(shù)設(shè)置一個(gè)查看器作為練習(xí)。

  11、瀏覽幀

  此時(shí)你能看到一個(gè)名為MainThread的進(jìn)程,其中包含三幀。單擊每一幀來顯示其變量狀態(tài)以及相對(duì)應(yīng)的py文件,同時(shí)會(huì)對(duì)有問題的代碼行以高亮顯示:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  12、簡單的調(diào)試

  在每個(gè)斷點(diǎn)出都單擊按鈕來時(shí)程序繼續(xù)運(yùn)行,觀察控制臺(tái)的腳本輸出:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  13、步進(jìn)式腳本調(diào)試

  讓我們對(duì)當(dāng)前腳本進(jìn)行進(jìn)一步的調(diào)試。單擊重啟調(diào)試進(jìn)程,程序再次運(yùn)行到第一個(gè)斷點(diǎn)處并暫停。

  在調(diào)試窗口的頂端,你會(huì)看到一列包含步進(jìn)調(diào)試按鈕的工具欄 stepping buttons。

  單擊,或者按下F8,你會(huì)發(fā)現(xiàn)藍(lán)色標(biāo)記移動(dòng)到了下一行:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  與此同時(shí),當(dāng)你暫停了腳本執(zhí)行時(shí)(單擊按鈕),你能看到高亮表示的函數(shù)print_time(),你可以選擇其中的任何一個(gè)進(jìn)程,并觀察變量的變化:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  14、運(yùn)行到當(dāng)前光標(biāo)處  

  假如你不想加入斷點(diǎn),但仍希望代碼能夠調(diào)試運(yùn)行到某一指定的代碼行,如何操作?

  返回調(diào)試界面的第二個(gè)斷點(diǎn)處,在對(duì)應(yīng)行插入輸入光標(biāo)。

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  單擊按鈕,或者按下Alt+F9快捷鍵,該行代碼變?yōu)楦吡溜@示:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

  15、如何調(diào)用Debug命令

  值得一提的是所有的調(diào)試操作不僅僅可以通過調(diào)試工具欄的對(duì)應(yīng)按鈕來完成,還可以通過主菜單中Run菜單下的命令來實(shí)現(xiàn),以及相關(guān)的快捷菜單項(xiàng)。下面給出一些常用的調(diào)試菜單命令及其對(duì)應(yīng)的快捷鍵列表:

Pycharm調(diào)試器的工作準(zhǔn)備有哪些

“Pycharm調(diào)試器的工作準(zhǔn)備有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI