最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Pycharm學習教程(3) 代碼運行調(diào)試

 更新時間:2017年05月03日 10:14:39   作者:山在嶺就在  
這篇文章主要為大家詳細介紹了最全的Pycharm學習教程第三篇代碼運行調(diào)試,具有一定的參考價值,感興趣的小伙伴們可以參考一下

Pycharm代碼運行調(diào)試,具體內(nèi)容如下

1、準備工作

 ?。?)Python版本為2.7或者更高版本

  (2)已經(jīng)創(chuàng)建了一個Python工程并且添加了內(nèi)容,具體參考: Getting Started tutorial

2、第一步——運行代碼

  打開之前編寫的Solver.py文件,在編輯框中右鍵,選擇快捷菜單中的“Run 'Solver'”選項。

  此時腳本文件正常運行并在調(diào)試工具窗口中顯示程序的輸出值:

  接下來我們對這兩步操作的具體內(nèi)容做詳細的解釋。

3、什么是Run/Debug模式

  每個需要運行/調(diào)試的腳本文件都需要一個特殊的配置文件來指定其腳本名稱、所在目錄以及其他重要的運行調(diào)試信息。Pycharm已經(jīng)集成了這種配置文件,避免用戶手動去創(chuàng)建。

  每次當你單擊Run或者Debug按鈕時(或者在快捷菜單中執(zhí)行相同操作),實際上都是將當前的運行/調(diào)試配置文件加載到當前的調(diào)試模型中。

  如果你仔細觀察第一張圖片就會發(fā)現(xiàn),在組合框中根本就沒有 run/debug的相關信息,知道第二張圖片中它們才出現(xiàn)。這就意味著當執(zhí)行運行/調(diào)試命令的時候,Solver腳本的run/debug配置文件才會自動生成,正如現(xiàn)在所顯示的這樣。

  此時再主工具欄中Run(綠色箭頭按鈕)和Debug(綠色甲殼蟲按鈕)兩個按鈕變得可用:

  同時這兩個圖標還是半透明,也就意味著他們臨時的,即由Pycharm自動創(chuàng)建的。

  OK,單擊下拉箭頭查看當前的可用命令操作:

  如果你已經(jīng)設置了多個run/debug配置方案,它們將都會顯示在這里下拉列表中,單擊選中一個作為當前工程的run/debug配置文件。

4、保存run/debug配置信息

  在上圖的下拉列表中,單擊Edit configuration選項,打開run/debug配置編輯窗口:

  在左側目錄中將會出現(xiàn)兩個節(jié)點:Python和Default。在第一個節(jié)點目錄下有一個單一的配置選項'Solver',在第二個選項下則有很多配置信息。

  這意味著什么呢?

  在Default節(jié)點下,你只能看到框架的名稱或者模式名稱,如果你創(chuàng)建一個新的Run/Debug配置文件,它將會在所選中的模式分支下進行創(chuàng)建,如果你更改了Default節(jié)點下的設置,相應的與其相關的所有配置文件都會更改。

  例如,你想將Pycharm中所用到的Python解釋器替換成遠程或者本地解釋器,就可以通過更改Python頁面下的解釋器設置,這樣所有新建的調(diào)試配置文件都會使用這個新的解釋器。

  早Python節(jié)點下,只用單一的配置選項'Solver',它屬于Python類型的配置,但與Default節(jié)點下的Python機制并不相同,它使用一個非透明的圖標進行的表示,這是用來指示當前配置文件的保存狀態(tài)的,當你保存配置文件之后圖標即變?yōu)榉峭该鳡顟B(tài)。例如,我們在Python類型下為當前的Solver腳本新建一個配置文件,取名'Solver1'。

  如果你對已存在的配置文件做了任何更改,這些更改只會應用于對應的腳本區(qū)域。

5、正式運行

  我們已經(jīng)能夠通過一種非常直接的方式,接下來我們尋求其他方法來運行腳本。

  正如我們所知,運行腳本意味著加載當前的調(diào)試配置文件,因此,運行腳本主要遵循以下流程:

 ?。?)在主工具欄中,單擊run/debug組框,確認當前的調(diào)試配置文件信息

 ?。?)做下面的工作(三選一即可):

    單擊運行按鈕,加載配置文件

    按下Shift+F10快捷鍵

    在主菜單上,選擇Run → Run

  此時,我們可以在Run tool window.窗口中觀察程序的運行結果。

6、運行測試程序

  我們這里并不討論代碼測試的重要性,而是探討Pycharm如何幫助我們完成這一功能。

7、選擇一個測試器

  首先,需要指定一個測試器。單擊工具欄的設置按鈕,打開Settings/Preferences對話框,然后單擊進入Python Intergated Tools頁面(可以通過搜索功能找到),默認選擇如下:

  在這里我們選擇Nosetests,保存并關閉對話框。

8、創(chuàng)建一個test程序塊

  首先我們創(chuàng)建一個test實例。Pycharm提供了一種非常智能的創(chuàng)建測試代碼的方法:單擊選中類名然后按下Ctrl+Shift+T快捷鍵,或者在主菜單中選擇Navigate → Test,如果test程序已存在,則會直接跳轉到對應代碼,否則創(chuàng)建它:

  按照系統(tǒng)提示進行操作,Pycharm會顯示如下對話框:

  單擊OK按鈕,查看創(chuàng)建結果:

  此時Pycharm已經(jīng)自動創(chuàng)建了一個測試類,當然這只是一個類框架,需要我們手動編寫測試函數(shù)。

9、運行測試代碼

  一切就緒后,右擊測試類名,在彈出的快捷菜單中選擇運行命令:

  觀察運行狀態(tài)欄中 Test Runner tab的輸出結果:

10、調(diào)試運行

  首先要弄清楚,為什么要進行調(diào)試?假設我們的程序在運行過程中命中了一個錯誤,那我們?nèi)绾味ㄎ诲e誤發(fā)生的位置?這就需要進行調(diào)試。

  在Pycharm中我們可以在其中直接對程序進行調(diào)試,唯一需要做的準備工作就是在程序必要的地方加設斷點,接下來我們進行詳細的介紹:

11、什么是斷點?

  一個breakpoint標記了一個行的位置,當程序運行到該行代碼的時候,Pycharm會將程序暫時掛起以方便我們對程序的運行狀態(tài)進行分析。Pycharm支持若干中類型的斷點 types of breakpoints,可以通過對應圖標進行分辨。

  這里我們采用Python的行斷點為例進行介紹

12、設置斷點

  方法非常簡單,單擊代碼左側的空白灰色槽即可:

  注意斷點會將對應的代碼行標記為紅色,這種顏色標記目前還不能被用戶所更改,我們會盡快出臺解決方案。

  順便說一句,取消斷點的操作也很簡單,在同樣位置再次單擊即可。

  當你將鼠標指針懸停在斷點上方時,Pycharm會顯示斷點的關鍵信息,行號以及腳本屬性,如果你希望更改該斷點的屬性,右擊斷點:

  可以嘗試對斷點屬性進行個性化更改,然后觀察圖標的變化。

13、代碼調(diào)試

  接下來,我們正式開始對代碼進行調(diào)試。

  首先從配置文件組框中選擇同名的'Solver'文件作為當前調(diào)試的配置文件,然后單擊調(diào)試按鈕(綠色甲殼蟲樣式的按鈕):

  接下來會Pycharm會執(zhí)行以下操作:

 ?。?)PyCharm開始運行,并在斷點處暫停

 ?。?)斷點所在代碼行變藍,意味著Pycharm程序進程已經(jīng)到達斷點處,但尚未執(zhí)行斷點所標記的代碼。

 ?。?)Debug tool window窗口出現(xiàn),顯示當前重要調(diào)試信息,并允許用戶對調(diào)試進程進行更改。

  雖然Pycharm使用手冊中已經(jīng)完整提供了調(diào)試窗口中所有控件的功能信息,我們這里仍然對其進行簡要介紹。我們發(fā)現(xiàn)窗口分為兩個選項卡:Debugger tab and the Console tab。

 ?。?)Debugger窗口分為三個可見區(qū)域:Frames, Variables, 和 Watches。這些窗口列出了當前的框架、運行的進程,方便用戶查看程序空間中變量的狀態(tài)等。當你選擇一個框架,就會顯示出相關的變量信息,當然這些區(qū)域都是可以折疊隱藏的。

 ?。?)Console窗口顯示當前的控制臺輸出信息,默認這個窗口位于Debugger之下,可以通過單擊其標簽將其前置顯示。

  當然我們可以改變這些窗口的擺放位置,如果你不喜歡程序的默認排版的話。具體參加Moving tabs and areas章節(jié)。

  Debugger窗口的工作模式:

  OK,現(xiàn)在程序暫停在了第一斷點處,F(xiàn)rames窗口顯示的是Solver腳本的第7行代碼所對應的進程demo,相關變量a、b、c已經(jīng)定義,但變量d尚未進行定義。接下來?

  按下F9(或者左側工具欄的綠色箭頭),程序會繼續(xù)運行到下一斷點處,通過這種方式你可以將每個斷點都運行一遍,觀察變量的變化。

  更多有關 Debugger窗口的信息參見軟件手冊:product documentation

  Console窗口的工作模式:

  為什么需要用到Console窗口呢?當我們需要查看程序給出的錯誤信息,或者進行一些額外的臨時運算時,就需要在這個窗口里面進行。

  單擊Console選項卡使其前置:

  然后單擊左側工具欄中的命令符按鈕,顯示Python的命令提示符:

  此時激活了控制臺機制,嘗試在其中執(zhí)行一些Python命令:

  注意到控制臺窗口提供了代碼的拼寫提示(Ctrl+Space)以及歷史記憶(Up/Down keys)功能,更多信息參見: Using Debug Console

  最后,如果你希望Console窗口一直處于可用狀態(tài),只需將其移動成為一個單獨的窗口即可:

14、再次運行

  在完成了本次調(diào)試運行并再次加載調(diào)試配置文件之后,我們可以再次運行調(diào)試,單擊工具欄的run按鈕即可。

15、REPL——在控制臺界面調(diào)試程序

  最后,如果你更習慣工作于控制臺環(huán)境下,也可以將Pycharm設置成為控制臺模式。在主菜單中選擇Tools → Run Python Console...來加載控制臺:

  此時console窗口將會被激活,并顯示為一個單獨的窗口:

  在這個控制臺窗口中我們可以做很多有意思的事情,接下來我們演示如何將最近編寫的Solver.py文件中的代碼導入到控制臺:

  打開Solver.py文件(打開的方法多種多樣,例如Ctrl+E - View → Recent Files),全選文件中的代碼內(nèi)容(Ctrl+A, or Edit → Select All),然后按下Alt+Shift+E(或者右擊在彈出的快捷菜單中選擇Execute Selection in Console):

  此時,Pycharm就會自動將選中的代碼導入到控制臺界面,方便我們對其進行編輯:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • python獲取地震信息 微信實時推送

    python獲取地震信息 微信實時推送

    這篇文章主要為大家詳細介紹了python獲取地震信息,微信實時推送,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • python 異常捕獲詳解流程

    python 異常捕獲詳解流程

    異常即非正常狀態(tài),在Python中使用異常對象來表示異常。若程序在編譯或運行過程中發(fā)生錯誤,程序的執(zhí)行過程就會發(fā)生改變,拋出異常對象,程序流進入異常處理。如果異常對象沒有被處理或捕捉,程序就會執(zhí)行回溯(Traceback)來終止程序
    2022-03-03
  • Python多進程編程常用方法解析

    Python多進程編程常用方法解析

    這篇文章主要介紹了Python多進程編程常用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Pytest如何使用skip跳過執(zhí)行測試

    Pytest如何使用skip跳過執(zhí)行測試

    這篇文章主要介紹了Pytest如何使用skip跳過執(zhí)行測試,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • Mac在python3環(huán)境下安裝virtualwrapper遇到的問題及解決方法

    Mac在python3環(huán)境下安裝virtualwrapper遇到的問題及解決方法

    這篇文章主要介紹了Mac在python3環(huán)境下安裝virtualwrapper遇到的問題及解決方法,我在使用mac安裝virtualwrapper的時候遇到了問題,搞了好長時間,,在這里總結一下分享出來,供遇到相同的問題的朋友使用,少走些彎路,需要的朋友可以參考下
    2019-07-07
  • python3中的eval和exec的區(qū)別與聯(lián)系

    python3中的eval和exec的區(qū)別與聯(lián)系

    這篇文章主要介紹了python3中的eval和exec的區(qū)別與聯(lián)系,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • Python+Delorean實現(xiàn)時間格式智能轉換

    Python+Delorean實現(xiàn)時間格式智能轉換

    DeLorean是一個Python的第三方模塊,基于?pytz?和?dateutil?開發(fā),用于處理Python中日期時間的格式轉換。本文將詳細講講DeLorean的使用,感興趣的可以了解一下
    2022-04-04
  • 解決mnist數(shù)據(jù)集下載的相關問題

    解決mnist數(shù)據(jù)集下載的相關問題

    這篇文章主要介紹了解決mnist數(shù)據(jù)集下載的相關問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用

    Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用

    Python,numpy都有自己的一套數(shù)據(jù)格式,本文主要介紹了Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • 使用pytorch提取卷積神經(jīng)網(wǎng)絡的特征圖可視化

    使用pytorch提取卷積神經(jīng)網(wǎng)絡的特征圖可視化

    這篇文章主要給大家介紹了關于使用pytorch提取卷積神經(jīng)網(wǎng)絡的特征圖可視化的相關資料,文中給出了詳細的思路以及示例代碼,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-03-03

最新評論

宣武区| 神农架林区| 休宁县| 迁西县| 扶余县| 卓资县| 高雄市| 河曲县| 格尔木市| 朝阳县| 丘北县| 珠海市| 新河县| 丰原市| 施秉县| 互助| 株洲市| 什邡市| 和田市| 通榆县| 嘉荫县| 台中县| 洛南县| 札达县| 长汀县| 铁岭市| 海盐县| 竹溪县| 九江县| 库尔勒市| 五河县| 南充市| 喀喇| 南涧| 大荔县| 司法| 鄯善县| 长兴县| 镇江市| 肃南| 吉木萨尔县|