numpy的矩阵比较难,下面举例解释

# 矩阵运算和数组运算的区别

a = np.array([[1,1],[0,1]])
b = np.array([[2,0],[3,4]])

print(a)
print(b)

结果
[[1 1]
 [0 1]]
[[2 0]
 [3 4]]
 
 # 数组的乘积
a * b 

结果
array([[2, 0],
       [0, 4]])
       
# 矩阵的乘积
# (a的第1行和b的第1列的元素相乘再相加)5 = 1*2 + 1*3 
# (a的第1行和b的第2列的元素相乘再相加)4 = 1*0 + 1*4 
# (a的第2行和b的第1列的元素相乘再相加)3 = 0*2 + 1*3
# (a的第2行和b的第2列的元素相乘再相加)4 = 0*0 + 1*4

# 矩阵运算的第一种写法
a @ b 

结果
array([[5, 4],
       [3, 4]])

# 矩阵运算的第二种写法
a.dot(b)

结果
array([[5, 4],
       [3, 4]])