日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Pylint:讓你的Python代碼保持一致

當(dāng)你想要爭(zhēng)論代碼復(fù)雜性時(shí),Pylint 是你的朋友。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站制作與策劃設(shè)計(jì),武威網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:武威等地區(qū)。武威做網(wǎng)站價(jià)格咨詢:18980820575

Pylint 是更高層級(jí)的 Python 樣式強(qiáng)制程序。而 flake8 和 black 檢查的是“本地”樣式:換行位置、注釋的格式、發(fā)現(xiàn)注釋掉的代碼或日志格式中的錯(cuò)誤做法之類的問(wèn)題。

默認(rèn)情況下,Pylint 非常激進(jìn)。它將對(duì)每樣?xùn)|西都提供嚴(yán)厲的意見,從檢查是否實(shí)際實(shí)現(xiàn)聲明的接口到重構(gòu)重復(fù)代碼的可能性,這對(duì)新用戶來(lái)說(shuō)可能會(huì)很多。一種溫和地將其引入項(xiàng)目或團(tuán)隊(duì)的方法是先關(guān)閉所有檢查器,然后逐個(gè)啟用檢查器。如果你已經(jīng)在使用 flake8、black 和 mypy,這尤其有用:Pylint 有相當(dāng)多的檢查器和它們?cè)诠δ苌现丿B。

但是,Pylint 獨(dú)有之處之一是能夠強(qiáng)制執(zhí)行更高級(jí)別的問(wèn)題:例如,函數(shù)的行數(shù)或者類中方法的數(shù)量。

這些數(shù)字可能因項(xiàng)目而異,并且可能取決于開發(fā)團(tuán)隊(duì)的偏好。但是,一旦團(tuán)隊(duì)就參數(shù)達(dá)成一致,使用自動(dòng)工具強(qiáng)制化這些參數(shù)非常有用。這是 Pylint 閃耀的地方。

配置 Pylint

要以空配置開始,請(qǐng)將 .pylintrc 設(shè)置為

 
 
 
  1. [MESSAGES CONTROL]
  2.  
  3. disable=all

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

你可以通過(guò)運(yùn)行 pylint 來(lái)確認(rèn)所有消息都已關(guān)閉:

 
 
 
  1. $ pylint

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

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

 
 
 
  1. enable=,
  2. ...

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

檢查器消息的來(lái)源:每條消息只屬于一個(gè)檢查器。許多最有用的消息都在設(shè)計(jì)檢查器下。默認(rèn)數(shù)字通常都不錯(cuò),但要調(diào)整最大值也很簡(jiǎn)單:我們可以在 .pylintrc 中添加一個(gè)名為 DESIGN 的段。

 
 
 
  1. [DESIGN]
  2. max-args=7
  3. max-locals=15

另一個(gè)有用的消息來(lái)源是“重構(gòu)”檢查器。我已啟用一些最喜歡的消息有 consider-using-dict-comprehensionstop-iteration-return(它會(huì)查找正確的停止迭代的方式是 return 而使用了 raise StopIteration 的迭代器)和 chained-comparison,它將建議使用如 1 <= x < 5,而不是不太明顯的 1 <= x && 5 > 5 的語(yǔ)法。

最后是一個(gè)在性能方面消耗很大的檢查器,但它非常有用,就是 similarities。它會(huì)查找不同部分代碼之間的復(fù)制粘貼來(lái)強(qiáng)制執(zhí)行“不要重復(fù)自己”(DRY 原則)。它只啟用一條消息:duplicate-code。默認(rèn)的 “最小相似行數(shù)” 設(shè)置為 4??梢允褂?.pylintrc 將其設(shè)置為不同的值。

 
 
 
  1. [SIMILARITIES]
  2. min-similarity-lines=3

Pylint 使代碼評(píng)審變得簡(jiǎn)單

如果你厭倦了需要指出一個(gè)類太復(fù)雜,或者兩個(gè)不同的函數(shù)基本相同的代碼評(píng)審,請(qǐng)將 Pylint 添加到你的持續(xù)集成配置中,并且只需要對(duì)項(xiàng)目復(fù)雜性準(zhǔn)則的爭(zhēng)論一次就行。


網(wǎng)站題目:Pylint:讓你的Python代碼保持一致
新聞來(lái)源:http://m.5511xx.com/article/ccchsss.html