Spec-Zone.ru › NumPy 1.20

numpy.geterrobj

numpy.geterrobj()

Возвращает текущий объект, определяющий обработку ошибок с плавающей запятой.

Объект ошибки содержит всю информацию, определяющую поведение обработки ошибок в NumPy. geterrobj используется внутри другими функциями, которые получают и устанавливают поведение обработки ошибок (geterr, seterr, geterrcall, seterrcall).

Returns
errobjlist

Объект ошибки, список, содержащий три элемента: [внутренний размер буфера NumPy, маска ошибок, функция обратного вызова ошибок].

Маска ошибок — целое число, содержащее информацию об обработке всех четырёх ошибок с плавающей запятой. Информация для каждого типа ошибки содержится в трёх битах целого числа. Если мы напечатаем его в восьмеричной системе счисления, мы увидим, какая обработка установлена для «недействительной», «недостаточной», «избыточной» и «деления на ноль» (в указанном порядке). Напечатанную строку можно интерпретировать следующим образом:

  • 0 : ‘игнорировать’
  • 1 : ‘предупреждение’
  • 2 : ‘вызвать исключение’
  • 3 : ‘вызвать функцию обратного вызова’
  • 4 : ‘вывести сообщение на консоль’
  • 5 : ‘записать в лог’

См. также

seterrobj, seterr, geterr, seterrcall, geterrcall
getbufsize, setbufsize

Примечания

Для получения полной документации по типам исключений с плавающей запятой и вариантам обработки см. seterr.

Примеры

>>> np.geterrobj()  # first get the defaults
[8192, 521, None]
>>> def err_handler(type, flag):
...     print("Floating point error (%s), with flag %s" % (type, flag))
...
>>> old_bufsize = np.setbufsize(20000)
>>> old_err = np.seterr(divide='raise')
>>> old_handler = np.seterrcall(err_handler)
>>> np.geterrobj()
[8192, 521, <function err_handler at 0x91dcaac>]
>>> old_err = np.seterr(all='ignore')
>>> np.base_repr(np.geterrobj()[1], 8)
'0'
>>> old_err = np.seterr(divide='warn', over='log', under='call',
...                     invalid='print')
>>> np.base_repr(np.geterrobj()[1], 8)
'4351'

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.geterrobj.html

Spec-Zone.ru

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