对于短函数和方法,是否可以禁用pylint缺少docstring错误?

Ita*_*mar 16 python coding-style pylint

Pylint报告了__init__没有docstring的每个函数和方法(除外)的错误.

这通常是可取的,所以我不想全局禁用它(在pylintrc文件级别或在文件级别).

但是,在我看来,有些情况下文档字符串不是必需的,甚至是有害的.例如:

def get_foo(self, foo_id):
  """Gets foo by its id."""" 
  return foos[foo_id]
Run Code Online (Sandbox Code Playgroud)

此方法是一个简单的getter,完全由其签名描述.必须编写文档字符串是有害的,因为如果方法被更改,它会创建重复的维护.

如果函数或方法短于3行代码,我希望能够设置(例如pylintrc)类似的东西docstring_threshold=3,以抑制丢失的文档字符串错误.有没有办法做到这一点?

rya*_*son 20

例如,使用pylint 1.3.1为你的pylintrc添加一行docstring-min-length=10.

它在生成的pylintrc pylint --generate-rcfile文件中描述为

需要docstrings的函数/类的最小行长度,较短的行长度是免除的.

文档参考.