Python numpy.floor_divide()
numpy.floor_divide(arr1, arr2, /, out = None, where = True, casting = ‘same_kind’, order = ‘K’, dtype = None) : 第一个数组中的数组元素被第二个数组中的元素除以(所有发生的元素都是一样的)。arr1和arr2都必须有相同的形状。它相当于Python的//运算符,并与Python的%(余数)函数配对,所以b = a % b + b * (a / / b),直至舍去。
参数 :
arr1 : [array_like]输入作为分子的数组或对象。
arr2 : [array_like]输入数组或作为分母的对象。
out : [ndarray, None, optional]输出数组,其尺寸与输入数组相同,与结果一起放置。
**kwargs : 允许你向一个函数传递长度可变的关键字参数。当我们想在一个函数中处理命名的参数时,它就会被使用。
where : [array_like, optional]真值意味着在该位置计算通用函数(ufunc),假值意味着在输出中不考虑该值。
返回 :
一个带有floor(x1 / x2)的数组
代码1:Arr1除以Arr2
# Python program explaining
# floor_divide() function
import numpy as np
# input_array
arr1 = [2, 2, 2, 2, 2]
arr2 = [2, 3, 4, 5, 6]
print ("arr1 : ", arr1)
print ("arr1 : ", arr2)
# output_array
out = np.floor_divide(arr1, arr2)
print ("\nOutput array : ", out)
输出 :
arr1 : [2, 2, 2, 2, 2]
arr1 : [2, 3, 4, 5, 6]
Output array : [1 0 0 0 0]
代码2:Arr1的元素除以除数
# Python program explaining
# floor_divide() function
import numpy as np
# input_array
arr1 = [2, 7, 3, 11, 4]
divisor = 3
print ("arr1 : ", arr1)
# output_array
out = np.floor_divide(arr1, divisor)
print ("\nOutput array : ", out)
输出 :
arr1 : [2, 7, 3, 11, 4]
Output array : [0 2 1 3 1]
代码3:如果Arr2有-ve元素,floor_divide处理结果
# Python program explaining
# floor_divide() function
import numpy as np
# input_array
arr1 = [2, 6, 21, 21, 12]
arr2 = [2, 3, 4, -3, 6]
print ("arr1 : ", arr1)
print ("arr2 : ", arr2)
# output_array
out = np.floor_divide(arr1, arr2)
print ("\nOutput array : ", out)
输出 :
arr1 : [2, 6, 21, 21, 12]
arr2 : [2, 3, 4, -3, 6]
Output array : [ 1 2 5 -7 2]
时间复杂度: O(1)
辅助空间: O(1)