专栏名称: 编程派
Python程序员都在看的公众号,跟着编程派一起学习Python,看最新国外教程和资源!
目录
相关文章推荐
51好读  ›  专栏  ›  编程派

如何规范你的Python代码?

编程派  · 公众号  · Python  · 2017-04-06 11:34

正文

请到「今天看啥」查看全文


f , -- output - format =< format >

设置输出格式。可以选择的格式有 text, parseable, colorized, msvs (visual studio) 和 html, 默认的输出格式是 text。

  • -- disable - msg = `` < msg ids >

禁止指定 id 的 message. 比如说输出中包含了 W0402 这个 warning 的 message, 如果不希望它在输出中出现,可以使用 -- disable - msg = W0402

Pylint 的输出

Pylint 的默认输出格式是原始文本(raw text)格式 ,可以通过 -f ,--output-format= 来指定别的输出格式如 html 等等。在 Pylint 的输出中有如下两个部分:源代码分析部分和报告部分。

源代码分析部分:

对于每一个 Python 模块,Pylint 的结果中首先显示一些"*"字符 , 后面紧跟模块的名字,然后是一系列的 message, message的格式如下:

  1. MESSAGE_TYPE: LINE_NUM:[OBJECT:] MESSAGE

MESSAGE_TYPE 有如下几种:

(C) 惯例。违反了编码风格标准

(R) 重构。写得非常糟糕的代码。

(W) 警告。某些 Python 特定的问题。

(E) 错误。很可能是代码中的错误。

(F) 致命错误。阻止 Pylint 进一步运行的错误。

清单 2. Pylint 中的 utils 模块的输出结果
  1. ************* Module utils

  2. C: 88:Message: Missing docstring

  3. R: 88:Message: Too few public methods (0/2)

  4. C:183:MessagesHandlerMixIn._cat_ids: Missing docstring

  5. R:183:MessagesHandlerMixIn._cat_ids: Method could be a function

  6. R:282:MessagesHandlerMixIn.list_messages: Too many branches (14/12)

报告部分:

在源代码分析结束后面,会有一系列的报告,每个报告关注于项目的某些方面,如每种类别的 message 的数目,模块的依赖关系等等。具体来说,报告中会包含如下的方面:

  • 检查的 module 的个数。

  • 对于每个 module, 错误和警告在其中所占的百分比。比如有两个 module A 和 B, 如果一共检查出来 4 个错误,1 个错误是在 A 中,3 个错误是在 B 中,那么 A 的错误的百分比是 25%, B 的错误的百分比是 75%。

  • 错误,警告的总数量。


使用 Pylint 分析 Python 代码的具体示例

下面是一个从 xml 文件中读取一些值并显示出来的一段 Python 代码 dw.py,代码如下:

清单 3. 源码
  1. import string

  2. #!/usr/bin/env python

  3. import xml.dom.minidom

  4. xmlDom=xml.dom.minidom.parse("identity.xml")

  5. organizations = xmlDom.getElementsByTagName('DW')

  6. for org in organizations:

  7.     products = org.getElementsByTagName('linux')

  8.    for product in products:

  9.        print 'ID: ' + product.getAttribute('id')

  10.        print 'Name: ' + product.getAttribute('name')

  11.        print 'Word Count: ' + product.getAttribute('count')

清单 4. identity.xml 的内容






请到「今天看啥」查看全文