📜  Python中的numpy.true_divide

📅  最后修改于: 2020-06-17 04:38:08             🧑  作者: Mango

true_divide(arr1, arr22, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, ufunc ‘true_divide’) :

第一个数组中的数组元素除以第二个数组(所有元素都发生)。arr1和arr2都必须具有相同的形状。按元素返回真除法。

Python传统上遵循“楼层划分”。不论输入类型如何,真除法都会将答案调整为最佳。
“ //”是楼层划分运算符。
“ /”是真正的除法运算符。

参数:

arr1:[array_like]用作分子的输入数组或对象。
arr2:[array_like]用作分母的输入数组或对象。
out:[ndarray,None,可选]输出数组,其尺寸与Input数组相同,放在结果上。
** kwargs:允许您将参数的关键字可变长度参数传递给函数。当我们要处理函数中的命名参数时使用它。
where:[array_like,可选]真值表示要计算通用该位置的function(ufunc),False值表示离开仅在输出中的值。

返回:

如果输入为标量,则为标量;否则以arr1 / arr2(元素方式)排列,即真除法

代码1:arr1除以arr2

# 解释true_divide()函数的Python程序 
import numpy as np 
  
# input_array 
arr1 = [6, 7, 2, 9, 1] 
arr2 = [2, 3, 4, 5, 6] 
print ("arr1         : ", arr1) 
print ("arr1         : ", arr2) 
  
# output_array 
out = np.true_divide(arr1, arr2) 
print ("\n输出数组 : \n", out) 

输出:

arr1         :  [6, 7, 2, 9, 1]
arr1         :  [2, 3, 4, 5, 6]

输出数组 : 
 [ 3.          2.33333333  0.5         1.8         0.16666667]

代码2:arr1的元素除以除数

# 解释true_divide()函数的Python程序 
import numpy as np 
  
# input_array 
arr1 = [2, 7, 3, 11, 4] 
divisor = 3
print ("arr1         : ", arr1) 
  
# output_array 
out = np.true_divide(arr1, divisor) 
print ("\n输出数组 : ", out) 

输出:

arr1         :  [2, 7, 3, 11, 4]

输出数组 :  [ 0.66666667  2.33333333  1.          3.66666667  1.33333333]

代码3:floor_division(//)和true-division(/)之间的比较

# 解释true_divide()函数的Python程序 
import numpy as np 
  
# input_array 
arr1 = np.arange(5) 
arr2 = [2, 3, 4, 5, 6] 
print ("arr1         : ", arr1) 
print ("arr1         : ", arr2) 
  
# output_array 
out = np.floor_divide(arr1, arr2) 
out_arr = np.true_divide(arr1, arr2)  
print ("\n输出数组 with floor divide : \n", out) 
print ("\n输出数组 with true divide  : \n", out_arr) 
  
  
print ("\n输出数组 with floor divide(//) : \n", arr1//arr2) 
print ("\n输出数组 with true divide(/)   : \n", arr1/arr2) 

输出:

arr1         :  [0 1 2 3 4]
arr1         :  [2, 3, 4, 5, 6]

输出数组 with floor divide : 
 [0 0 0 0 0]

输出数组 with true divide  : 
 [ 0.          0.33333333  0.5         0.6         0.66666667]

输出数组 with floor divide(//) : 
 [0 0 0 0 0]

输出数组 with true divide(/)   : 
 [ 0.          0.33333333  0.5         0.6         0.66666667]