ヘッダーに次の行があります。
import config.logging_settings
これは実際に私のpythonロギング設定を変更しますが、pylintはそれが未使用のインポートであると考えています。一般的にunused-import
警告を削除したくないので、この特定の1行だけを無視することは可能ですか?
このプロジェクトに.pylintrc
を付けても構いませんので、構成ファイルの変更に対する回答は受け入れられます。
そうでなければ、このようなものも高く評価されます:
import config.logging_settings # pylint: disable-this-line-in-some-way
Pylintメッセージコントロールは Pylintマニュアル で文書化されています:
特定のメッセージをローカルで無効にすることはできますか?
はい、この機能はPylint 0.11で追加されました。これは以下を追加することで実行できます
#pylint: disable=some-message,another-one
目的のブロックレベルまたは目的のコード行の最後
メッセージコードまたはシンボル名を使用できます。
マニュアルには 例 もあります。
wiki があり、すべてのpylintメッセージとそのコードを文書化しています。
import config.logging_settings # pylint: disable=W0611
これは単純で、その行に固有のものです。
Sthenaultが親切に指摘したように、より読みやすい形式を使用できます。
import config.logging_settings # pylint: disable=unused-import
あなたが探しているのは...
import config.logging_settings # @UnusedImport
他のフォーマット警告が表示されないように、コメントの前の二重スペースに注意してください。
また、IDE(使用している場合)に応じて、おそらく正しい無視ルールを追加するオプションがあります(たとえばEclipseで Ctrl1 カーソルが警告の上にある間、@UnusedImport
が自動的に提案されます
https://github.com/PyCQA/pylint/tree/master/pylint/checkers のファイルをチェックアウトします。これらのファイルをCtrl + F-ingするか、Github検索機能を使用するよりも、メッセージからエラー名を取得するより良い方法を見つけていません。
メッセージが「No name ... in module ...」の場合、検索を使用します。
No name %r in module %r repo:PyCQA/pylint/tree/master path:/pylint/checkers
または、結果を減らすには:
"No name %r in module %r" repo:PyCQA/pylint/tree/master path:/pylint/checkers
Githubには以下が表示されます。
"E0611": (
"No name %r in module %r",
"no-name-in-module",
"Used when a name cannot be found in a module.",
その後、次のことができます。
from collections import Sequence # pylint: disable=no-name-in-module