numpy.geterr#

numpy.geterr()[原始碼]#

Get the current way of handling floating-point errors.

Returns:
resdict

A dictionary with keys 「divide」, 「over」, 「under」, and 「invalid」, whose values are from the strings 「ignore」, 「print」, 「log」, 「warn」, 「raise」, and 「call」. The keys represent possible floating-point exceptions, and the values define how these exceptions are handled.

Notes

For complete documentation of the types of floating-point exceptions and treatment options, see seterr.

Concurrency note: see Floating point error handling

Examples

>>> import numpy as np
>>> np.geterr()
{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}
>>> np.arange(3.) / np.arange(3.)  
array([nan,  1.,  1.])
RuntimeWarning: invalid value encountered in divide
>>> oldsettings = np.seterr(all='warn', invalid='raise')
>>> np.geterr()
{'divide': 'warn', 'over': 'warn', 'under': 'warn', 'invalid': 'raise'}
>>> np.arange(3.) / np.arange(3.)
Traceback (most recent call last):
  ...
FloatingPointError: invalid value encountered in divide
>>> oldsettings = np.seterr(**oldsettings)  # restore original