PyCharm斷點調試以及變數監測是怎麼玩的?
PyCharm作為一款針對Python語言編程集成開發環境(IDE),功能方面已經做到極致了。雖然Visual Studio 2017已經添加了Python編程的支持(PTVS),也繼承了C++的斷點調試功能,但在Python開發方面還是有很多功能沒有PyCharm來的方便。PyCharm提供的斷點調試也灰常強大,正常使用print函數這種輔助代碼來調試代碼的方式針對簡單模塊來說來算OK,但這需要經驗來判斷,決定哪裡輸出什麼數據,一旦程序複雜之後,需要參考的數值會很多,全部輸出會很繁瑣,而且print也需要時間代價,會導致程序執行效率降低,因此我們採用斷點調試這種更直觀便捷的方式。
斷點是指在代碼中設置中斷位置,當程序運行到中斷位置的時候會中斷下來,讓程序員可查看此時每個變數的值,因斷點中斷的程序並沒有結束,可以選擇繼續執行。
我們來看看PyCharm是如何玩斷點調試的?
之前文章的一段代碼
通過滑鼠單擊左側行號就可以創建斷點,上圖中在12、19、20行總共創建了三個斷點,有斷點的行代碼顏色也會高亮。我們通過快捷鍵F9來Debug這段代碼。
藍色高亮的行表示代碼運行到這個斷點(第19行)中斷下來了,在Debugger欄可以看到當前所有有效的變數值
此時有效的變數值只有變數dict_ex,再按F9程序會執行到下一個斷點(第20行)
此時的變數會有所變化,按F9是按斷點來調試的方式,還有一種經常使用的功能是單步調試。
快捷鍵和快捷按鈕對應Debugger
解釋一下常用的幾個
Step Over(F8): 單擊此按鈕執行程序,直到當前方法或文件中的下一行,跳過當前執行點(如果有的話)引用的方法。 如果當前行是方法中的最後一行,則執行步驟到此方法之後執行的行。
Step Into(F7):單擊此按鈕可使調試器進入當前執行點調用的方法。
Step Into My Code(Shift+Alt+F7):點擊此按鈕跳過library代碼,並專註於您自己的代碼。
Step Out(F8):單擊此按鈕使調試器從當前方法中退出,直到執行完畢。
我比較喜歡用F7和Shift+Alt+F7以及前面的F9結合的方式來調試代碼,無敵的存在,變數心中有,沒什麼代碼是搞不定的,但是工作中往往測試代碼要自己做單元測試,代碼可能在Maya或Houdini里能運行,但在PyCharm里不能執行,這是比較不好操作的,只能寫單元測試代碼來調試了。
添加變數監測功能也很好用,它可以把你關心的變數單獨提出來放在Watches面板供監測
接下來就是頻繁地使用F7,F8,F9這些快捷鍵調試自己的代碼了,少按點Q鍵吧,多學習。
對應的Visual Studio斷點調試方法如出一轍,可能快捷有所不同。


TAG:CGRnDStudio |
※Python和Scala的定義變數
※Perl 變數
※微軟摺疊屏專利現身,Surface Phone或有變數
※Python實現變數分箱及應用
※「Python」Chapter1 變數和簡單數據類型
※VBScript 變數
※Shell 變數
※python基礎之變數與運算符
※關於如何使用webpack命令行傳入變數,並通過process.env來調用
※Flipkart-Walmart交易:軟銀最終會有變數嗎
※你真的需要了解一下CSS變數 var()的用法
※python基礎之變數類型number(math模塊)
※假如MSI決賽iG遇到SKT,Khan會成為最大的變數嗎?
※Python數據類型、運算符、變數
※linux-shell編程中awk變數的使用
※Python 函數式編程:不可變數據結構
※Perl 特殊變數
※「學習筆記」Python dir()函數和 __doc__ 變數的使用
※又是熟悉的控制變數法?iG提拔二隊中單頂替Rookie!
※TensorFlow中常量與變數的基本操作演示