3.20.2 警告フィルタ

警告フィルタは、ある警告を無視すべきか、表示すべきか、あるいは (例外を送出する) エラーにするべきかを制御します。

概念的には、警告フィルタは複数のフィルタ仕様からなる順番付けられた リストを維持しています; 何らかの特定の警告が生じると、フィルタ仕様の 一致するものが見つかるまで、リスト中の各フィルタとの照合が行われます; 一致したフィルタ仕様がその警告の処理方法を決定します。 フィルタの各エントリは (action, message, category, module, lineno) からなるタプルです。ここで:

Warning クラスは組み込みの Exception クラスから 導出されているので、警告をエラーに変えるには単に category(message)raise します。

警告フィルタは Python インタプリタのコマンドラインに渡される -W オプションで初期化されます。インタプリタは -W オプションに渡される全ての引数を sys.warnoptions; に変換せずに保存します; warnings モジュールは最初に import された際にこれらの引数を解釈します (無効なオプションはsys.stderr にメッセージを出力した後 無視されます)。

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。