python实现矩阵乘法

 更新时间:2022年01月14日 11:20:29   作者:咕嘟咕嘟_  
这篇文章主要介绍了python实现矩阵乘法,矩阵相乘需要前面矩阵的行数与后面矩阵的列数相同方可相乘,下面来看看python代码的具体实现吧

矩阵相乘需要前面矩阵的行数与后面矩阵的列数相同方可相乘。第一步,先将前面矩阵的每一行分别与后面矩阵的列相乘,作为结果矩阵的行列;第二步算出结果即可。

# 2 3 3 4
# 1 2 3
# 4 5 6
# 1 2 3 4
# 5 6 7 8
# 9 10 11 12
lst1, lst2 = [], []
n1,m1,n2,m2 = map(int,input().split())
for i in range(n1):
? ? nums = list(map(int,input().split())) #输入一行数据
? ? lst1.append(nums)
for i in range(n2):
? ? nums = list(map(int,input().split()))
? ? lst2.append(nums)
res = []
for i in range(n1):
? ? res.append([])
? ? for j in range(m2):
? ? ? ? lst4 = []
? ? ? ? lst3 = lst1[i]
? ? ? ? for k in range(n2):
? ? ? ? ? ? lst4.append(lst2[k][j])
? ? ? ? res_num = sum(map(lambda x,y:x*y,lst3,lst4))
? ? ? ? res[i].append(res_num)
print(res)

import numpy as np
print('numpy:',np.dot(lst1,lst2)) #使用numpy验证结果
2 3 3 4
1 2 3
4 5 6
1 2 3 4
5 6 7 8
9 10 11 12
[[38, 44, 50, 56], [83, 98, 113, 128]]
numpy: [[ 38 ?44 ?50 ?56]
?[ 83 ?98 113 128]]

到此这篇关于python实现矩阵乘法的文章就介绍到这了,更多相关python矩阵乘法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

最新评论