message[, category[, stacklevel]]) |
message.__class__
が使われ、メッセージ文は str(message)
になります。発された例外が前述した警告フィルタによってエラーに
変更された場合、この関数は例外を送出します。引数 stacklevel
は Python でラッパ関数を書く際に利用することができます。例えば:
def deprecation(message): warnings.warn(message, DeprecationWarning, stacklevel=2)
こうすることで、警告が参照するソースコード部分を、 deprecation() 自身ではなく deprecation() を 呼び出した側にできます (というのも、前者の場合は警告メッセージ の目的を台無しにしてしまうからです)。
message, category, filename, lineno[, module[, registry[, module_globals]]]) |
__warningregistry__
辞書) を明示的に渡します。
モジュール名は標準で .py
が取り去られたファイル名になります;
レジストリが渡されなかった場合、警告が抑制されることはありません。
message は文字列のとき、category は Warning
のサブクラスでなければなりません。また message は
Warning のインスタンスであってもよく、この場合
category は無視されます。
module_globals は、もし与えられるならば、警告が発せられるコードが 使っているグローバル名前空間でなければなりません。(この引数は zipfile やその他の非ファイルシステムのインポート元の中にあるモジュールのソース を表示することをサポートするためのもので、Python 2.5 で追加されました。)
message, category, filename, lineno[, file]) |
formatwarning(message, category, filename,
lineno)
を呼び出し、返された文字列を file に書き込み
ます。file は標準では sys.stderr
です。
この関数は warnings.showwarning
に別の実装を代入して
置き換えることができます。
message, category, filename, lineno) |
action[, message[, category[, module[, lineno[, append]]]]]) |
action[, category[, lineno[, append]]]) |
) |