numpy.mod#

numpy.mod(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature]) = <ufunc 'remainder'>#

返回逐元素除法的餘數。

計算與 floor_divide 函數互補的餘數。它等同於 Python 模數運算子 x1 % x2,並且與除數 x2 的符號相同。與 np.remainder 等效的 MATLAB 函數是 mod

警告

這不應與

  • Python 3.7 的 math.remainder 和 C 的 remainder 混淆,後者計算 IEEE 餘數,它是 round(x1 / x2) 的互補。

  • MATLAB rem 函數和 C % 運算子,它們是 int(x1 / x2) 的互補。

參數:
x1array_like

被除數陣列。

x2array_like

除數陣列。如果 x1.shape != x2.shape,它們必須可廣播到一個共同的形狀(這將成為輸出的形狀)。

outndarray、None 或 ndarray 和 None 的元組,可選

結果儲存的位置。如果提供,則必須具有輸入廣播到的形狀。如果未提供或為 None,則返回新分配的陣列。元組(僅可作為關鍵字參數)的長度必須等於輸出的數量。

wherearray_like,可選

此條件會廣播到輸入。在條件為 True 的位置,out 陣列將設定為 ufunc 結果。在其他位置,out 陣列將保留其原始值。請注意,如果透過預設 out=None 建立未初始化的 out 陣列,則其中條件為 False 的位置將保持未初始化。

**kwargs

有關其他僅限關鍵字參數,請參閱 ufunc 文件

返回:
yndarray

floor_divide(x1, x2) 的逐元素餘數。如果 x1x2 都是純量,則這是一個純量。

另請參閱

floor_divide

等同於 Python // 運算子。

divmod

同時進行 floor 除法和餘數運算。

fmod

等同於 MATLAB rem 函數。

divide, floor

註解

x2 為 0 且 x1x2 都是(整數陣列)時,返回 0。modremainder 的別名。

範例

>>> import numpy as np
>>> np.remainder([4, 7], [2, 3])
array([0, 1])
>>> np.remainder(np.arange(7), 5)
array([0, 1, 2, 3, 4, 0, 1])

% 運算子可以用作 ndarray 上 np.remainder 的簡寫。

>>> x1 = np.arange(7)
>>> x1 % 5
array([0, 1, 2, 3, 4, 0, 1])