这篇文章主要介绍了python实现矩阵乘法的方法,实例分析了Python矩阵操作的相关技巧,需要的朋友可以参考下
本文实例讲述了python实现矩阵乘法的方法。分享给大家供大家参考。具体实现方法如下:
- def matrixMul(A, B):
- res = [[0] * len(B[0]) for i in range(len(A))]
- for i in range(len(A)):
- for j in range(len(B[0])):
- for k in range(len(B)):
- res[i][j] += A[i][k] * B[k][j]
- return res
- def matrixMul2(A, B):
- return [[sum(a * b for a, b in zip(a, b)) for b in zip(*B)] for a in A]
- a = [[1,2], [3,4], [5,6], [7,8]]
- b = [[1,2,3,4], [5,6,7,8]]
- print matrixMul(a,b)
- print matrixMul(b,a)
- print "-"*90
- print matrixMul2(a,b)
- print matrixMul2(b,a)
- print "-"*90
- from numpy import dot
- print map(list,dot(a,b))
- print map(list,dot(b,a))
- #Out:
- #[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]
- #[[50, 60], [114, 140]]
- #------------------------------------------------------------------------
- #[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]
- #[[50, 60], [114, 140]]
- #------------------------------------------------------------------------
- #[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]
- #[[50, 60], [114, 140]]
希望本文所述对大家的Python程序设计有所帮助。
新闻热点
疑难解答