Spec-Zone.ru › NumPy 2.0

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API