给Python程序员推荐PyLint

最近写Python有点多,有点不习惯弱类型的语言,经常犯一些小错误,想找一个静态的语法分析工具,在网上搜索了一番,找到PyLint这个工具,同时支持Python 2 和 Python 3。

帮助文档里面说支持PEP 8,它能确保代码规范和自动分析出代码中一些常见的Bug和错误。

简单讲讲用法
一:安装PyLint
pip install pylint
确认PyLint安装成功,运行命令:
pylint –version

二:生成默认的配置文件
pylint –persistent=n –generate-rcfile > pylint.conf
检索当前目录,已经生成了一个pylint.conf的配置文件,配置文件中的都是pylint的默认配置。

三:检查单个文件
pylint –rcfile=pylint.conf test.py
结果
* test
C: 1, 0: Missing module docstring (missing-docstring)
W: 14,12: Unused import django (unused-import)

四:检查整个工程
前面我们只是检查了单个文件,如果我们需要检查多个文件的话,在工程的根目录下创建init.py文件,即我们将工程当作一个Python module,这样就可以对整个工程进行静态分析了。
pylint module_name

五:其他说明
1.pylint默认的输出格式是文本格式,可以通过-f 或–out-format 参数来指定输出格式。

2.pylint的输出有两部分内容,源码分析、报告。
源码部分
对于检测的 Python 模块,pylint 的结果中先显示一些”*” , 后面是测试模块的名字,然后是一系列的 message,message 的格式如下:
MESSAGE_TYPE 有如下几种:
(C) 惯例。违反了编码风格标准
(R) 重构。写得非常糟糕的代码。
(W) 警告。某些 Python 特定的问题。
(E) 错误。很可能是代码中的错误。
(F) 致命错误。阻止 Pylint 进一步运行的错误。
报告部分
在源代码分析结束后面,会有各种报告信息,每个报告关注于项目的方向不一样,如每种类别的 message 的数目,模块的依赖关系等。具体报告中会包含以下的方面:
检查的 module 的个数;对于每个 module, 错误和警告在其中所占的百分比;错误和警告的总数量。

3.如果我们不想每次都使用rcfile参数,我们仅需要将配置文件名字改为 .pylintrc 就可以了。

网站就不开留言了,需要留言请移步公众号。