在不用numpy.dot()的情况下,python中矩阵AB相乘怎么表示,单纯用列表和循环这些。
def multiplyMatrix(A,B):
#普通矩阵相乘
row_len = len(A)
column_len = len(B[0])
cross_len = len(B)
res_mat = [[0] * row_len for i in range(column_len)]
for i in range(row_len):
for j in range(column_len):
for k in range(cross_len):
temp = A[i][k] * B[k][j]
res_mat[i][j] += temp
# print(res_mat)
return res_mat
#普通矩阵相乘
m,p,n=map(int,input().split(","))#获得两个矩阵的行列数
A=[]
B=[] #创建A,B两个空列表,用以存放相乘的两个矩阵
C=[[0 for i in range(n)] for j in range(m)] #创建一个m行n列的初始化矩阵
for i in range(m):
A.append(list(map(int,(input().split(" "))))) #获得A矩阵
for i in range(p):
B.append(list(map(int,input().split(" ")))) #获得B矩阵
for i in range(m):
for j in range(n):
for k in range(p):
C[i][j] += A[i][k]*B[k][j] #根据矩阵相乘的运算规则进行运算
for s in C:
print() #保证输出为矩阵形式
for r in s:
print(r,end=" ") #输出结果矩阵
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!