Pylint は、一部のファイルに docstring がないというエラーをスローします。各クラス、メソッド、関数に docstring を追加しようとしましたが、Pylint はファイルの先頭に docstring が必要であることもチェックしているようです。これを何らかの方法で無効にできますか?
クラス、関数、またはメソッド内に docstring が見つからない場合に通知を受け取りたいのですが、ファイルに docstring を含めることは必須ではありません。
(プロプライエタリなソース ファイルの冒頭によく見られる法律用語を表す用語はありますか? 例はありますか? このような些細な質問を別途投稿してもよいかどうかわかりません。)
ベストアンサー1
Pythonモジュールにdocstringがあるのは良いことです。モジュールの機能、提供内容、クラスの使用例などを説明します。これは、ファイルの冒頭でよく見かける、著作権やライセンス情報を示すコメントとは異なります。私の意見では、docstringにはそのようなコメントは入れるべきではありません(完全に削除すべきだと主張する人もいます。例を参照してください)。ソースコードテンプレートを削除する)
Pylint 2.4 以降では、missing-docstring
次の 3 つのサブメッセージを使用してさまざまなものを区別できます。
C0114
(missing-module-docstring
)C0115
(missing-class-docstring
)C0116
(missing-function-docstring
)
したがって、次の.pylintrc
ファイルは機能するはずです。
[MASTER]
disable=
C0114, # missing-module-docstring
Pylintの以前のバージョンでは、docstringsが出現する可能性のあるさまざまな場所に対して個別のコードがないため、無効にすることしかできません。C0111問題は、これをモジュール スコープで無効にすると、モジュール内のすべての場所で無効になることです (つまり、関数 / クラス / メソッドの docstring が見つからない場合の C 行が取得されません。これはおそらく適切ではありません)。
そこで、次のような、欠けている小さなドキュメント文字列を追加することをお勧めします。
"""
high level support for doing this and that.
"""
すぐに、モジュールのさまざまなクラスや関数の使用方法の例など、必ずしもクラスや関数の個別のドキュメント文字列に属していないもの (これらがどのように相互作用するか、またはクイック スタート ガイドのようなもの) をそこに追加できる便利なものが見つかるでしょう。