写代码实际上是须要规范的,团队中更是如此;否则 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 来源:慕课网