繁体   English   中英

为什么我使用 Python function 和 Numpy 内置点() Python function 得到 2 个不同的输出

[英]Why I am getting 2 different outputs for same calculation using Python function and Numpy inbuilt dot() function

我正在尝试使用 Python function 和 Numpy 内置点计算 dot.product() ZC1C5D14527ZC783 但是,对于相同的值,我得到了两个不同的输出。

# Python lists
arr1 = list(range(1000000))
arr2 = list(range(1000000, 2000000))

# Numpy arrays
arr1_np = np.array(arr1)
arr2_np = np.array(arr2)

result = 0
for x1, x2 in zip(arr1, arr2):
    result += x1*x2
result

O/P :- 833332333333500000


np.dot(arr1_np, arr2_np)

O/P:- -1942957984

这是因为你没有在循环中使用你的np_arrays 这样你会得到相同的结果:

arr1 = list(range(1000000))
arr2 = list(range(1000000, 2000000))

# Numpy arrays
arr1_np = np.array(arr1)
arr2_np = np.array(arr2)

result = 0
for x1, x2 in zip(arr1_np, arr2_np): #your issue was here
    result += x1*x2


np.dot(arr1_np, arr2_np)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM