4.4 KiB
NumPy gcd–返回两个数字的最大公约数
原文:# t0]https://www . aspython . com/python-modules/num py/numpy-gcd
正如我们在前面的练习中看到的, NumPy 的 lcm 函数对于寻找两个或更多数字的最小公倍数非常有用,如果我们想要两个或更多数字的最大公约数呢?这就是 numpy gcd 函数发挥作用的地方。两个或多个数的最大公约数(GCD)是能整除这两个数的最大公因数。
什么是 NumPy gcd?
两个整数的最大公约数(GCD)是两个整数均分的最大整数。例如,16 和 24 的 GCD 是 8,因为 8 是 16 和 24 的最大整数。
NumPy gcd 是一个数学函数,计算给予 nunpy.gcd() 函数的输入数字的 gcd 值。
NumPy gcd 的语法
让我们来看看函数的语法。
numpy.gcd(x1 , x2)
输入的 x1 、 x2 不能是负数。
这里,**x1**和**x2**是输入的数字,可以是单个数字或者是一个 NumPy 数组数字。 numpy.gcd() 函数计算输入数字的 GCD(最大公约数)。
**注意:**数字不能是浮点数。
让我们写一些代码来更好地理解这个函数。
使用 NumPy gcd
两个整数的最大公约数可以用 NumPy 的 gcd 函数来计算。它是这样工作的:
单一数字的数量 gcd
import numpy as np
print("The GCD of 12 and 46 is:",np.gcd(12 , 46))
print("The GCD of 12 and 24 is:",np.gcd(12 , 24))
print("The GCD of 25 and 50 is:",np.gcd(25 , 50))
print("The GCD of 5 and 100 is:",np.gcd(5 , 100))
print("The GCD of 17 and 87 is:",np.gcd(17 , 87))
输出
The GCD of 12 and 46 is: 2
The GCD of 12 and 24 is: 12
The GCD of 25 and 50 is: 25
The GCD of 5 and 100 is: 5
The GCD of 17 and 87 is: 1
在上面的代码片段中,我们使用 import 语句导入了 NumPy 库。
在接下来的几行中,我们使用 np.gcd() 函数来计算数字的 GCD。注意我们得到两个数的 GCD 有多快,这就是 Python NumPy 库的强大之处🙂
我们先来了解一下 25 和 50 的 GCD 是怎么算出来的。我们可以观察到 25 和 50 相除的最大数是 25。所以,25 和 50 的 GCD 是 25,这也是由 np.gcd() 函数产生的输出。
现在,让我们看看如何计算一组数字的 GCD。
单个数数组的个数 gcd
在这里,我们将找到单个 NumPy 数组中所有元素的 gcd。
import numpy as np
a = np.array((3, 6, 24, 56, 79, 144))
gcd_value = np.gcd.reduce(a)
print("Input Array:\n",a)
print("The GCD value of the elements of the array is:",gcd_value)
输出
Input Array:
[ 3 6 24 56 79 144]
The GCD value of the elements of the array is: 1
为了找到单个 NumPy 数组的所有元素的 GCD,使用了 reduce 函数,该函数将 gcd 方法应用于数组的每个元素。
该功能的其余工作是相同的。
可以计算两个 NumPy 数组的 GCD 吗?让我们看看🙂
两个数字数组的 gcd
import numpy as np
a = np.array((12 , 24 , 99))
b = np.array((44 , 66 , 27))
c = np.gcd(a , b)
print("Array 1:\n",a)
print("Array 2:\n",b)
print("GCD values:\n",c)
输出
Array 1:
[12 24 99]
Array 2:
[44 66 27]
GCD values:
[4 6 9]
太神奇了!我们刚刚计算了两个 NumPy 数组的 GCD。
这里, np.gcd() 函数选取两个数组中相同位置的元素,并计算它们的 GCD。例如,在上面的代码片段中,选择了 12 和 44,并计算了它们的 GCD。类似地,计算两个数组的下一个元素及其 GCD。
np.gcd() 的输出是一个 NumPy 数组,存储在上面代码片段中的变量 c 中。
这就是关于 NumPy gcd 函数的全部内容。
摘要
在本文中,我们学习了函数的语法,并练习了不同类型的示例,使我们的理解更加清晰。这些 NumPy 函数使用起来非常简单,你知道这就是 NumPy 库的强大之处。它有很多数学函数,当我们对大量数据进行数学计算时,这些函数使事情变得简单。
在这里继续探索关于其他 Python 主题的精彩文章。