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
return [[sum(a * b for a, b in zip(a, b)) for b in zip(*B)] for a in A]
print matrixMul(a,b)
print matrixMul(b,a)
乘积形式
除了上述的矩阵乘法以外,还有其他一些特殊的"乘积"形式被定义在矩阵上,值得注意的是,当提及"矩阵相乘"或者"矩阵乘法"的时候,并不是指代这些特殊的乘积形式,而是定义中所描述的矩阵乘法.在描述这些特殊乘积时,使用这些运算的专用名称和符号来避免表述歧义.
本文实例讲述了python实现矩阵乘法的方法.分享给大家供大家参考.
具体实现方法如下:
from numpy import dot
print map(list,dot(a,b))
print map(list,dot(b,a))
#Out:
#------------------------------------------------------------------------
希望本文所述对大家的Python程序设计有所帮助.
def mmult(a,b):
zip_b = zip(*b)
return [[sum(ele_a*ele_b for ele_a, ele_b in zip(row_a, col_b))
for col_b in zip_b] for row_a in a]
print(mmult(x,y))
或者可以直接用numpy
import numpy as np # I want to check my solution with numpy
mx = np.matrix(x)
my = np.matrix(y)
print(mx * my)
以上就是土嘎嘎小编为大家整理的python矩阵相乘函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!