arr = np.array([0.,1,2,3,4,5,6,7])
np.sqrt(arr, arr)
print(arr)
sqrt中的两个参数表示:将对于第一个参数的计算结果赋值给第二个参数。
上文中的例子,输出结果为:[0. 1. 1.41421356 1.73205081 2. 2.23606798 2.44948974 2.64575131]
这时就有两个问题,即:
1、第一个参数与第二个参数的shape得一样,比如两个参数都得是1行5列的矩阵。
2、第一个参数与第二个参数元素的数据类型得一样,比如本文中的例子,元素都得是float型,如果类型不一样,会报强制类型转换错误,错误信息如下
TypeError: ufunc 'sqrt' output (typecode 'd') could not be coerced to provided output parameter (typecode 'l') according to the casting rule ''same_kind''
防止这个错误的出现,就要保证两个参数的数据类型一致