numpy.testing.clear_and_catch_warnings
- classnumpy.testing.clear_and_catch_warnings(record=False, modules=())[source]
-
Управляющая конструкция, которая сбрасывает реестр предупреждений для захвата предупреждений
Предупреждения могут быть непредсказуемыми, потому что всякий раз, когда возникает предупреждение, Python добавляет член
__warningregistry__в вызывающий модуль. Это делает невозможным повторное срабатывание предупреждения в этом модуле, какие бы фильтры предупреждений вы ни задали. Этот управляющий объект принимает последовательностьmodulesв качестве ключевого аргумента своего конструктора и:- сохраняет и удаляет любые записи
__warningregistry__в заданныхmodulesпри входе; - сбрасывает
__warningregistry__до предыдущего состояния при выходе.
Это позволяет повторно сгенерировать любое предупреждение внутри управляющей конструкции, не затрагивая состояние предупреждений снаружи.
Для совместимости с Python 3.0, пожалуйста, рассмотрите все аргументы как только ключевые.
- Параметры:
-
- recordbool, необязательно
-
Указывает, нужно ли захватывать предупреждения с помощью пользовательской реализации
warnings.showwarning()и добавлять их в список, возвращаемый управляющей конструкцией. В противном случае управляющая конструкция возвращает None. Объекты, добавленные в список, — это аргументы, чьи атрибуты отражают аргументы функцииshowwarning(). - modulesпоследовательность, необязательно
-
Последовательность модулей, для которых необходимо сбросить реестр предупреждений при входе и восстановить при выходе. Для корректной работы все фильтры «ignore» должны фильтровать по одному из этих модулей.
Примеры
>>> import warnings >>> with np.testing.clear_and_catch_warnings( ... modules=[np._core.fromnumeric]): ... warnings.simplefilter('always') ... warnings.filterwarnings('ignore', module='np._core.fromnumeric') ... # do something that raises a warning but ignore those in ... # np._core.fromnumeric - сохраняет и удаляет любые записи
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.testing.clear_and_catch_warnings.html