• <menu id="w2i4a"></menu>
  • logo Pycharm IDE設(shè)置系列教程

    文檔首頁>>Pycharm IDE設(shè)置系列教程>>Pycharm IDE設(shè)置系列教程(二十二):代碼質(zhì)量協(xié)助技巧和竅門(上)

    Pycharm IDE設(shè)置系列教程(二十二):代碼質(zhì)量協(xié)助技巧和竅門(上)


    PyCharm是一種Python IDE,其帶有一整套可以幫助用戶在使用Python語言開發(fā)時提高其效率的工具。此外,該IDE提供了一些高級功能,以用于Django框架下的專業(yè)Web開發(fā)。

    PyCharm最新版本2019.3現(xiàn)已發(fā)布,增加用于Jupyter筆記本的交互式小部件,MongoDB支持以及所有Python 3.8功能的代碼幫助,還有其他功能改進提高Python語言開發(fā)效率!感興趣的朋友歡迎下載體驗~

    點擊下載PyCharm最新版2019.3

    本教程的內(nèi)容?

    本教程旨在通過使用PyCharm的代碼智能功能,逐步引導(dǎo)您在Python項目中創(chuàng)建源代碼。您將看到PyCharm如何通過適當?shù)目s進,空格,導(dǎo)入等方式幫助您使源代碼保持完美的形狀-實際上,您會看到PyCharm本身就是代碼質(zhì)量工具。

    在你開始前?

    確保:

    • 您正在使用PyCharm 5.0或更高版本。如果您仍然沒有PyCharm,請從此頁面下載 。要安裝PyCharm,請根據(jù)您的平臺按照說明進行操作。有關(guān)詳細信息,請參閱產(chǎn)品文檔。

    • 您已經(jīng)創(chuàng)建了一個Python項目(File | New Project ...)。

    • 您已經(jīng)創(chuàng)建了兩個目錄src和test_dir (File | New或Alt+Insert)。

    • 您已將Python文件添加到項目的src和 test_dir目錄(File | New或 Alt+Insert)。

    高亮代碼

    創(chuàng)建一個新的Python文件src / Solver.py Alt+Insert。創(chuàng)建的文件將立即打開以進行編輯。默認情況下,該文件沒有內(nèi)容-這是因為Solver.py文件是由文件模板創(chuàng)建的(對于Python文件而言)僅包含任何內(nèi)容。

    接下來,開始輸入關(guān)鍵字class。當您剛開始輸入內(nèi)容時,PyCharm會立即顯示建議列表以完成您的代碼:

    Pycharm IDE設(shè)置系列教程(二十二):代碼質(zhì)量協(xié)助技巧和竅門(上)

    紅色曲線標記了下一個預(yù)期的條目-在這種情況下,這是預(yù)期的標識符。輸入班級名稱Solver。紅色曲線在班級名稱之后移動。如果將鼠標指針懸停在此曲線上,則會看到錯誤說明(“預(yù)期冒號”)。另外,請注意右側(cè)裝訂線中的紅色錯誤條-它也標記了相同的錯誤:

    py冒號預(yù)期

    確定,鍵入冒號,然后按Enter。根據(jù)Python代碼樣式,下一條語句縮進。如果偶然在之后按空格Enter,則將違反代碼樣式設(shè)置。

    調(diào)整PEP8檢查?

    但是,默認情況下,這些違規(guī)行為只是微弱的警告,因此不可見。因此,首先讓我們提高它們的重要性。圖標常規(guī)設(shè)置在主工具欄上單擊,在“ 設(shè)置/首選項”對話框的“ 檢查”頁面上,鍵入PEP8以查找所有與PEP8相關(guān)的檢查,然后從“嚴重性”下拉列表中選擇“ 警告”:

    py檢查嚴重性

    應(yīng)用更改并關(guān)閉對話框。現(xiàn)在讓我們回到源代碼。

    跟蹤PEP8規(guī)則?

    現(xiàn)在,PyCharm發(fā)揮出了自己的最大優(yōu)勢!它可以保護您的代碼樣式的完整性。您立即注意到縮進的空間被突出顯示,并且,當您鍵入下def demo(self,a,b,c):一條語句時,例如 ,PyCharm將顯示來自PEP8檢查的消息:

    py檢查pep8

    因此,如您所見,PyCharm支持PEP8作為官方Python樣式指南。如果你探索的檢查列表(Ctrl+Alt+S- 檢查),你會看到PyCharm啟動 pep8.py您的代碼工具,精確定位代碼風格的侵犯。

    代碼檢查及其設(shè)置?

    順便說一句,更專心地檢查檢查。如果您剛剛打開此頁面,則將看到具有默認設(shè)置的默認檢查配置文件:這意味著檢查適用于當前項目的所有源。

    讓我們嘗試針對兩個不同的范圍自定義此配置文件:

    • 在測試范圍中,拼寫錯誤應(yīng)標記為錯別字(綠色)

    • 在生產(chǎn)范圍中,拼寫錯誤應(yīng)標記為錯誤(紅色)-我們是否可以實際產(chǎn)生帶有錯別字的代碼?

    創(chuàng)建范圍?

    首先,讓我們定義兩個范圍。為此,請單擊圖標常規(guī)設(shè)置主工具欄上的,在“ 設(shè)置/首選項”對話框中,展開節(jié)點“ 外觀和行為”,然后打開“ 范圍 ”頁面。然后單擊圖標一般添加并選擇范圍類型Local。

    在“ 添加新作用域”對話框中,鍵入作用域名稱(Test),然后在項目樹中,選擇要包含在“測試作用域”中的目錄test_dir。請注意,當您包含目錄時,“ 模式”字段會自動填寫:

    py范圍測試

    重復(fù)此過程以創(chuàng)建生產(chǎn)范圍。

    使用這些范圍創(chuàng)建檢驗配置文件?

    接下來,讓我們創(chuàng)建默認配置文件的副本(盡管此配置文件是可編輯的……為了安全起見):

    py復(fù)制配置文件

    并為其重新命名,例如MyProjectProfile。此新配置文件是默認配置文件的副本,并且具有相同的檢查集。

    選擇此新配置文件后,讓我們找到并檢查拼寫檢查。要查找拼寫檢查(我們之前已經(jīng)做過),只需spel在搜索區(qū)域中鍵入即可。

    下一步是什么?單擊“所有作用域”按鈕,然后從列表中選擇“測試”作用域;對生產(chǎn)范圍重復(fù)相同的操作

    py spel測試范圍

    在“測試”范圍內(nèi),檢查嚴重性保持不變(錯別字);但是,在“生產(chǎn)”范圍內(nèi),我們將從嚴重性列表中選擇“錯誤”:

    py pel生產(chǎn)范圍

    注意檢查的顏色代碼。如果未更改,則顯示為黑色。如果它們是藍色,則表示它們已被更改。

    應(yīng)用更改并關(guān)閉對話框...

    因此,修改后的檢查配置文件已準備就緒。它的名稱是Project Default(副本),并且在Test和Production范圍中具有不同的拼寫檢查設(shè)置。接下來,讓我們根據(jù)此配置文件檢查代碼。為此,請在主菜單上選擇“代碼” |“檢查代碼”,然后在對話框中選擇所需的配置文件和范圍:

    py根據(jù)范圍檢查代碼

    進行兩次-對于“測試”和“生產(chǎn)”范圍(如果要保留檢查結(jié)果以供進一步檢查和共享,則可以將其導(dǎo)出)。探索結(jié)果:

    py檢查

    突出顯示錯誤?

    除了違反編碼風格外,PyCharm還會根據(jù)所選配置文件突出顯示其他錯誤。

    例如,如果您的檢查配置文件包含Python檢驗 未解決的引用,并且您使用了尚未導(dǎo)入的符號,則PyCharm會在未解決的引用下劃線并建議添加import語句:

    py導(dǎo)入

    =====================================================

    有關(guān)詳細信息,請繼續(xù)關(guān)注我們接下來的教程“Pycharm IDE設(shè)置系列教程”。我們很快就會發(fā)布其他文章。

    想要了解或購買PyCharm正版授權(quán)的朋友可以咨詢慧都官方客服。

    Pycharm IDE設(shè)置系列教程(二十二):代碼質(zhì)量協(xié)助技巧和竅門(上)

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();