我试图理解以下python代码中发生了什么:
import numpy as np
numberList1 = [1,2,3]
numberList2 = [[4,5,6],[7,8,9]]
result = np.dot(numberList2, numberList1)
# Converting iterator to set
resultSet = set(result)
print(resultSet)
输出:
{32, 50}
我可以看到它将numberList1
中的每个元素乘以numberList2
-so{1*4 + 2*5 + 3*6 = 32},{1*7+2*8+3*9 = 50}
中每个数组中相同位置的元素。你知道吗
但是,如果我把数组改成:
numberList1 = [1,1,1]
numberList2 = [[2,2,2],[3,3,3]]
我看到的结果是
{9, 6}
这是错误的方法。。。你知道吗
如果我把它改成:
numberList1 = [1,1,1]
numberList2 = [[2,2,2],[2,2,2]]
我看到的结果就是
{6}
根据文件:
If a is an N-D array and b is a 1-D array, it is a sum product over the last axis of a and b.
作为一个数学家,我还不足以完全理解这是在告诉我什么,或者为什么输出的顺序有时会互换。你知道吗
^{} 是一种无序的数据类型,它将删除重复的数据类型。^{} 不返回迭代器(如代码中所述),而是返回^{} ,它将按照您期望的顺序:
相关问题 更多 >
编程相关推荐