【问题标题】:to solve a multiplication of two matrix解决两个矩阵的乘法
【发布时间】:2020-02-25 10:34:49
【问题描述】:

如何在python中将两个矩阵相乘

input:

a=[[3 5]
   [5 6]]

b=[[7 6]
   [3 7]]

预期输出:

ax =[[36 53]
     [65 72]]

【问题讨论】:

  • 假设你使用numpy(这对你的问题很有帮助)我建议matmul。请使用tour 并阅读how to ask a question
  • 你测试了什么?我们不反对关于家庭作业的问题并提供有关它们的帮助。但是我们不是来做你的功课的,因为它可能会适得其反,因为如果你没有尝试任何东西,你就不会学习。 IMO,您应该尝试一些事情并在遇到困难时提出问题。这样你会学到最多。

标签: python-3.x matrix multiplication


【解决方案1】:

对此有两种方法。最建议的一个是按照描述使用 numpy,它看起来像这样

import numpy as np
a=[[3,5],
   [5,6]]

b=[[7,6],
   [3,7]]
print(np.matmul(a, b))

然后返回

[[36 53]
[53 72]]

现在可以使用 for 循环,这将比 numpy 慢,但如果我们坚持使用普通的旧 python,它看起来像这样。

result = [[0,0], [0,0]]

for i in range(len(a)):
   for j in range(len(b[0])):
       for k in range(len(b)):
           result[i][j] += a[i][k] * b[k][j]

print(result)

这会返回

[[36, 53], [53, 72]]

所以是正确的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-24
    • 2021-04-11
    • 2013-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    相关资源
    最近更新 更多