Pythonプロジェクトを検索しているときに、# noqa
でコメントされた数行が見つかりました。
import sys
sys.path.append(r'C:\dev')
import some_module # noqa
Pythonでnoqa
はどういう意味ですか? Pythonのみに固有ですか?
# noqa
を行に追加すると、リンター(コードの品質を自動的にチェックするプログラム)はこの行をチェックしないことを示します。コードが生成した警告は無視されます。
その行には、リンターにとって「見た目が悪い」ものが含まれている可能性がありますが、開発者は何らかの理由でそこにあることを理解し、意図しています。
詳細については、 違反の選択と無視に関するFlake8のドキュメント を参照してください。
通常、Pythonプログラミングでは PEP8 警告を無視するように呼ばれています。
簡単に言えば、末尾に#noqaがある行はリンタープログラムによって無視され、警告は発生しません。
あのね? Guido van Rossum(Pythonの作成者)でさえ 前にこの質問をした :D
以前は "nopep8"でしたが、Flake8とPep8が共通の修飾子を必要とする場合、@ florentxは "No Quality Assurance"(iirc)のように "NoQA"を提案しました。
一部の基本usagesof # noqa
(with flake8 ):
# flake8: noqa
:この行を含むfilesはスキップされます# noqa
コメントを含む最後に:警告を発行しません# noqa: <error>
、例:# noqa: E234
終了時:無視特定のエラー行上