如何将 Python 上的每一行从一个矩阵乘以每一行到另一个矩阵?

how to multiply each row from one matrix to every rows to another matrix on Python?

当我运行程序

时A和B矩阵会不同
A = np.array([[1, 1, 1], [2, 2, 2]])
B = np.array([[1, 1, 1], [2, 2, 2], [3, 3, 3]])

输出矩阵 (C) 应与矩阵 A 具有相同的维度。 正如标题所说,我正在尝试将一个矩阵 (A) 的每一行乘以另一个矩阵 (B) 的每一行,并想对它们求和。

例如, C = (2,3)

的维度
C = [[A(0)*B(0) + A(1)*B(0)], [A(0)*B(1) + A(1)*B(1)],[A(0)*B(1) + A(1)*B(1)]]

我想知道是否有 numpy 函数可以做到这一点。

使用 numpy 广播:

C = (A * B[:, None]).sum(axis=1)

输出:

>>> C
array([[3, 3, 3],
       [6, 6, 6],
       [9, 9, 9]])