Lint
Tip
对你的代码运行pylint
- 定义:
- pylint是一个在Python源代码中查找bug的工具. 对于C和C++这样的不那么动态的(译者注: 原文是less dynamic)语言, 这些bug通常由编译器来捕获. 由于Python的动态特性, 有些警告可能不对. 不过伪告警应该很少.
- 优点:
- 可以捕获容易忽视的错误, 例如输入错误, 使用未赋值的变量等.
- 缺点:
- pylint不完美. 要利用其优势, 我们有时侯需要: a) 围绕着它来写代码 b) 抑制其告警 c) 改进它, 或者d) 忽略它.
- 结论:
确保对你的代码运行pylint.抑制不准确的警告,以便能够将其他警告暴露出来。
你可以通过设置一个行注释来抑制警告. 例如:- dict = 'something awful' # Bad Idea… pylint: disable=redefined-builtin
pylint警告是以一个数字编号(如C0112
)和一个符号名(如empty-docstring
)来标识的. 在编写新代码或更新已有代码时对告警进行抑制, 推荐使用符号名来标识.
如果警告的符号名不够见名知意,那么请对其增加一个详细解释。
采用这种抑制方式的好处是我们可以轻松查找抑制并回顾它们.
你可以使用命令pylint —list-msgs
来获取pylint告警列表. 你可以使用命令pylint —help-msg=C6409
, 以获取关于特定消息的更多信息.
相比较于之前使用的pylint: disable-msg
, 本文推荐使用pylint: disable
.
要抑制”参数未使用”告警, 你可以用””作为参数标识符, 或者在参数名前加”unused”. 遇到不能改变参数名的情况, 你可以通过在函数开头”提到”它们来消除告警. 例如:- def foo(a, unusedb, unused_c, d=None, e=None):
= d, e
return a
- dict = 'something awful' # Bad Idea… pylint: disable=redefined-builtin