Python Glossary English

все Python 3warningsфункция

warnings.filterwarnings()

фильтры

Добавляет правило фильтра предупреждений с условиями по тексту, категории, модулю и строке: тонкая настройка, что показывать, а что глушить.

Синтаксис

warnings.filterwarnings(action, message='', category=Warning, module='', lineno=0, append=False)

message — регулярное выражение, которое сопоставляется с НАЧАЛОМ текста без учёта регистра: 'old' заглушит «Old API», но не «very old», а точка или скобка в нём — спецсимволы. module — тоже регулярное выражение для начала имени модуля (с учётом регистра). Новое правило встаёт в начало списка и побеждает прежние; append=True ставит его в конец. Правило действует на весь процесс — для временного оберните вызов в catch_warnings().

Примеры

import warnings
with warnings.catch_warnings(record=True) as caught:
    warnings.simplefilter('always')
    warnings.filterwarnings('ignore', message='old')
    warnings.warn('Old API')
    warnings.warn('very old')
print([str(w.message) for w in caught])  # → ['very old']

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности