2016-12-04 20 views
0

max-statements使用Javascript ESLint爲小型,模塊化和可讀性功能提供了一個非常好的實施方法。我希望能在Python Flake8 lint中找到類似的東西,但到目前爲止我沒有運氣。有沒有配置Flake8來鼓勵小功能的方法?Flake 8與ESLint max-statements的等效性

+0

看起來像有一個圈複雜度檢查器,但默認情況下它是禁用的。 '--max-complexity'是配置文件中的命令行標誌或'max-complexity ='。值爲10推薦。它不相似,但可以鼓勵類似的習慣。 – kindall

回答

1

爲了擴大對@ kindall的評論,

Flake8不提供陳述檢查器,但它確實有計算秩的函數和方法的複雜性的方法有兩種。

Cyclomatic complexity使用語句和分支來確定函數的複雜性,所以這可能會導致比您在JavaScript中看到的更簡單的函數。這是因爲if/elif/else結構會增加複雜性,正如forwhile循環一樣。

要啓用「內置」循環複雜度實施,您可以使用--max-complexity。但是,這個項目有替代方案。例如,如果您將自己的圈複雜度檢查添加到Flake8中,並在運行Flake8時運行。