在 Numpy 中使用 fmod() 运算返回逐元素除法余数

numpyserver side programmingprogramming更新于 2025/9/2 18:22:17

要返回逐元素除法余数,请使用 Python Numpy 中的 numpy.fmod() 方法。对于 fmod 运算,结果的符号即被除数的符号。fmod() 函数等效于 Matlab™ 的 rem 函数。其中,第一个参数是 Dividend 数组。第二个参数是 Divisor 数组。

这是 C 库函数 fmod 的 NumPy 实现,余数与被除数 x1 的符号相同。它等效于 Matlab™ 的 rem 函数,请勿与 Python 的模运算符 x1 % x2 混淆。

条件通过输入进行广播。在条件为 True 的位置,输出数组将被设置为 ufunc 的结果。在其他位置,输出数组将保留其原始值。请注意,如果通过默认的 out=None 创建了未初始化的输出数组,则其中条件为 False 的位置将保持未初始化状态。

步骤

首先,导入所需的库 −

import numpy as np

创建一个数组。这是被除数数组 −

arr = np.array([-5, 9, 14, -22, 76, 81, 91])

显示数组 −

print("数组...
", arr)

获取数组的类型 −

print("
我们的数组类型...
", arr.dtype)

获取数组的维度 −

print("
我们的数组维度...
",arr.ndim)

获取数组的形状 −

print("
我们的数组形状...
",arr.shape)

除数数组 −

divisor = np.array([3, 7, 3, 3, 2, 7, 7])

要返回除法的逐元素余数,请使用 Python Numpy 中的 numpy.fmod() 方法。对于 fmod 函数,结果的符号即被除数的符号。fmod 函数等同于 Matlab™ 的 rem 函数。这里,第一个参数是 Dividend 数组。第二个参数是 Divisor 数组 −

print("
结果...
",np.fmod(arr, divisor))

示例

import numpy as np

# 创建数组
# This is the dividend array
arr = np.array([-5, 9, 14, -22, 76, 81, 91])

# 显示数组
print("数组...
", arr) # 获取数组的类型 print("
我们的数组类型...
", arr.dtype) # 获取数组的维度 print("
我们的数组维度...
",arr.ndim) # 获取数组的形状 print("
我们的数组形状...
",arr.shape) # 除数数组 divisor = np.array([3, 7, 3, 3, 2, 7, 7]) # 要返回除法的逐元素余数,请使用 Python Numpy 中的 numpy.fmod() 方法 # 对于 fmod 函数,结果的符号即被除数的符号 # fmod 函数等同于 Matlab™ 的 rem 函数。 # 这里,第一个参数是被除数数组 # 第二个参数是除数数组 print("
结果...
",np.fmod(arr, divisor))

输出

数组...
[ -5 9 14 -22 76 81 91]

我们的数组类型...
int64

我们的数组维度...
1

我们的数组形状...
(7,)

结果...
[-2 2 2 -1 0 4 0]

相关文章