Spec-Zone.ru › NumPy 1.11

numpy.divide

numpy.divide(x1, x2[, out]) =

Деление аргументов по элементам.

Параметры:

x1 : array_like

Массив делимого.

x2 : array_like

Массив делителя.

out : ndarray, необязательно

Массив, в который помещается результат. Его тип сохраняется, и он должен иметь правильную форму для хранения результата. См. документ ufuncs.

Возвращает:

y : ndarray или скаляр

Частное x1/x2, по элементам. Возвращает скаляр, если оба x1 и x2 являются скалярами.

См. также

seterr
Установить, следует ли генерировать исключение или предупреждение при переполнении, недополнении и делении на ноль.

Примечания

Эквивалентно x1 / x2 с точки зрения распространения массивов.

Поведение при делении на ноль можно изменить с помощью seterr.

В Python 2, когда оба x1 и x2 имеют целочисленный тип, divide будет вести себя как floor_divide. В Python 3, он ведет себя как true_divide.

Примеры

>>> np.divide(2.0, 4.0)
0.5
>>> x1 = np.arange(9.0).reshape((3, 3))
>>> x2 = np.arange(3.0)
>>> np.divide(x1, x2)
array([[ NaN,  1. ,  1. ],
       [ Inf,  4. ,  2.5],
       [ Inf,  7. ,  4. ]])

Обратите внимание на поведение с целочисленными типами (только Python 2):

>>> np.divide(2, 4)
0
>>> np.divide(2, 4.)
0.5

Деление на ноль всегда возвращает ноль в целочисленной арифметике (опять же, только Python 2), и не вызывает исключение или предупреждение:

>>> np.divide(np.array([0, 1], dtype=int), np.array([0, 0], dtype=int))
array([0, 0])

Однако деление на ноль можно перехватить с помощью seterr:

>>> old_err_state = np.seterr(divide='raise')
>>> np.divide(1, 0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
FloatingPointError: divide by zero encountered in divide
>>> ignored_states = np.seterr(**old_err_state)
>>> np.divide(1, 0)
0

© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.divide.html

Spec-Zone.ru

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