web-dev-qa-db-ja.com

短い関数とメソッドのpylintmissing docstringエラーを無効にすることは可能ですか?

Pylintは、docstringを持たないすべての関数とメソッド(__init__を除く)のエラーを報告します。

これは一般的に望ましいので、グローバルに(pylintrcで、またはファイルレベルで)無効にしたくありません。

しかし、私の意見では、docstringが不要で、有害でさえある場合があります。例えば:

def get_foo(self, foo_id):
  """Gets foo by its id."""" 
  return foos[foo_id]

このメソッドは、その署名によって完全に記述される単純なゲッターです。 docstringを書かなければならないことは、メソッドが変更された場合に重複したメンテナンスを作成するという点で有害です。

関数またはメソッドが3行のコードより短い場合に欠落しているdocstringエラーを抑制するために、docstring_threshold=3のようなものを(たとえばpylintrcに)設定できるようにしたいと思います。それを行う方法はありますか?

16
Itamar

Pylint 1.3.1を使用して、たとえばpylintrc docstring-min-length=10に行を追加します。

生成されたpylintrcpylint --generate-rcfileファイルに次のように記述されています。

Docstringを必要とする関数/クラスの最小行長。短いものは免除されます。

ドキュメントリファレンス

21
ryanpattison