下面是一个不使用numpy.einsum
进行乘法的解决方法:
import numpy as np
# 创建两个矩阵
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
# 获取矩阵的形状
m, n = A.shape
n, p = B.shape
# 创建结果矩阵
C = np.zeros((m, p))
# 进行矩阵乘法
for i in range(m):
for j in range(p):
for k in range(n):
C[i, j] += A[i, k] * B[k, j]
# 打印结果
print(C)
这个方法使用了三层循环来计算矩阵乘法。首先,我们创建一个全零矩阵C
来保存结果。然后,通过三个嵌套的循环,我们遍历A
的行和B
的列,并在每一步中计算相应元素的乘积并累加到C
中。最后,我们打印出结果。
请注意,这种方法效率相对较低,特别是对于大型矩阵而言。如果使用numpy.einsum
可以更高效地执行矩阵乘法。