Python代碼規範利器Flake8

寫代碼實際上是須要規範的,團隊中更是如此;否則 Google 也不會發布各類編碼規範,耳熟能詳的有Google C++ 風格指南,Google Python 風格指南,等等。php

這些規範有用嗎?有用也沒用,除非你腦子好使,一邊 coding,一邊將規範運用的發紫;不然咱們終須仍是須要一種工具來作這件事情。好在python 不止一種工具幫咱們作這件事。話休絮煩,切正題。html

Pylintpython

使用過,變態到發紫;不知道誰那麼無聊,將規則定的那麼死,咱們 pythoner 能快樂嗎?乃們不見 rubyer,Matz 倡導的是什麼? Happy Coding 有木有? 因此用過就仍了,由於我不須要這麼變態的搞,無愛~ 若是你要安裝,也很簡單:git

<php>easy_install pylint // maybe nedd root</php>github

Pep8shell

顧名思義,來自於 Python 社區著名的 PEP 8。基本上寫代碼按這個就對了,可是這還不夠完美;安裝以下:vim

easy_install pep8 // maybe nedd rootruby

 

Pyflakesapp

 

Python 程序被動檢測工具,還真夠被動的,據做者說比較快,不夠強大,可是還能夠~工具

easy_install pyflakes // maybe nedd root

Flake8

 

主角登場了,這是我推薦的,可是並不影響其餘人喜歡 pylint。其實這哥們是集大成者,是如下三個工具的包裝:

PyFlakes

Pep8

Ned Batchelder’s McCabe script

好處不說了,關鍵是可擴展的,這兒說的很清楚了:https://pypi.python.org/pypi/flake8/2.0。安裝以下:

easy_install flake8 // maybe nedd root

若是你跟我同樣喜歡 Git 這丫,那麼你也是 pyhoner,那麼還有福利,將以下的代碼寫入 .git/hooks/pre-commit:

#!/usr/bin/env python

import sys

from flake8.hooks import git_hook

 

COMPLEXITY = 12

STRICT = True

 

代碼就不解釋了,官方文檔寫的很清楚:http://flake8.readthedocs.org/en/latest/vcs.html#git-hook。 若是你的 pre-commit 腳本已經有了規則,也沒事,在 shell 中調用 python 吧。

若是你也喜歡 vim

 

做爲兩大神器之一的 vim,天然要有插件來享受以上工具的:

nvie/vim-flake8

vim-scripts/pylint.vim

看到上面的列舉,你應該會知道我在說什麼了,沒錯,用 vundle 安裝:

" Flake8 plugin for Vim.

Bundle 'nvie/vim-flake8'

" compiler plugin for python style checking tool.

Bundle 'vim-scripts/pylint.vim'

autocmd FileType python compiler pylint

 

若是你真的不知道 vundle,真的是時候使用她了:https://github.com/gmarik/vundle。若是你嫌這一切都麻煩,直接用個人 vimrc 吧,在這裏:

 

git clone https://github.com/icocoa/icocoa-vimrc.git --recursive vimrc // icocoa is my another account in GitHub

原文來源:https://m.pythontab.com/article/941

 

做者:www說 連接:http://www.imooc.com/article/51227 來源:慕課網

相關文章
相關標籤/搜索