日韩欧乱色一区二区三区在线_久久―日本道色综合久久_欧美日本一区二区_网曝91综合精品门事件在线

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > Pylint讓Python代碼保持一致

Pylint讓Python代碼保持一致

來源:千鋒教育
發布人:xqq
時間: 2023-11-07 06:00:20 1699308020

當你想要爭論代碼復雜性時,Pylint是你的朋友。

Pylint是更高層級的Python樣式強制程序。而flake8和black檢查的是“本地”樣式:換行位置、注釋的格式、發現注釋掉的代碼或日志格式中的錯誤做法之類的問題。

默認情況下,Pylint非常激進。它將對每樣東西都提供嚴厲的意見,從檢查是否實際實現聲明的接口到重構重復代碼的可能性,這對新用戶來說可能會很多。一種溫和地將其引入項目或團隊的方法是先關閉所有檢查器,然后逐個啟用檢查器。如果你已經在使用flake8、black和mypy,這尤其有用:Pylint有相當多的檢查器和它們在功能上重疊。

但是,Pylint獨有之處之一是能夠強制執行更高級別的問題:例如,函數的行數或者類中方法的數量。

這些數字可能因項目而異,并且可能取決于開發團隊的偏好。但是,一旦團隊就參數達成一致,使用自動工具強制化這些參數非常有用。這是Pylint閃耀的地方。

配置Pylint

要以空配置開始,請將.pylintrc設置為

[MESSAGESCONTROL]

disable=all

[MESSAGESCONTROL]

disable=all

這將禁用所有Pylint消息。由于其中許多是冗余的,這是有道理的。在Pylint中,message是一種特定的警告。

你可以通過運行pylint來確認所有消息都已關閉:

$pylint

通常,向pylint命令行添加參數并不是一個好主意:配置pylint的位置是.pylintrc。為了使它做一些有用的事,我們需要啟用一些消息。

要啟用消息,在.pylintrc中的[MESSAGESCONTROL]下添加

enable=,

...

對于看起來有用的“消息”(Pylint稱之為不同類型的警告)。我最喜歡的包括too-many-lines、too-many-arguments和too-many-branches。所有這些會限制模塊或函數的復雜性,并且無需進行人工操作即可客觀地進行代碼復雜度測量。

檢查器是消息的來源:每條消息只屬于一個檢查器。許多最有用的消息都在設計檢查器下。默認數字通常都不錯,但要調整最大值也很簡單:我們可以在.pylintrc中添加一個名為DESIGN的段。

[DESIGN]

max-args=7

max-locals=15

另一個有用的消息來源是“重構”檢查器。我已啟用一些最喜歡的消息有consider-using-dict-comprehension、stop-iteration-return(它會查找正確的停止迭代的方式是return而使用了raiseStopIteration的迭代器)和chained-comparison,它將建議使用如1<=x<5,而不是不太明顯的1<=x&&5>5的語法。

最后是一個在性能方面消耗很大的檢查器,但它非常有用,就是similarities。它會查找不同部分代碼之間的復制粘貼來強制執行“不要重復自己”(DRY原則)。它只啟用一條消息:duplicate-code。默認的“最小相似行數”設置為4。可以使用.pylintrc將其設置為不同的值。

[SIMILARITIES]

min-similarity-lines=3

Pylint使代碼評審變得簡單

如果你厭倦了需要指出一個類太復雜,或者兩個不同的函數基本相同的代碼評審,請將Pylint添加到你的持續集成配置中,并且只需要對項目復雜性準則的爭論一次就行。

以上內容為大家介紹了Pylint讓Python代碼保持一致,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。http://m.hangjiakeji.com/

tags: python培訓
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 巨鹿县| 满洲里市| 房产| 加查县| 溆浦县| 德兴市| 东方市| 栖霞市| 牙克石市| 根河市| 石林| 牟定县| 铜梁县| 屯门区| 中超| 祥云县| 三台县| 桐乡市| 敦煌市| 柯坪县| 诸暨市| 休宁县| 河间市| 余江县| 增城市| 灵台县| 鄂托克旗| 塔城市| 临城县| 图木舒克市| 宣威市| 静海县| 馆陶县| 汉川市| 治多县| 潢川县| 防城港市| 双牌县| 靖安县| 馆陶县| 左贡县|