Python矩阵乘法 - 附加到空列表中

时间:2018-05-07 13:21:36

标签: python-3.x matrix-multiplication

如何生成随机矩阵并以有效的方式将它们相乘。

这就是我所做的:

`mat1 = []
for i in range(0, order):
    num1 = random.sample(range(1,10), order)
    print(num1)
    mat1.append(num1)
print()

print("Result of Matrix Multiplication.")
for p in range(len(mat1)):
    for q in range(len(mat2[0])):
        for r in range(len(mat2)):
            res_matrix[p][q] += mat1[p][r] * mat2[r][q]
for res in res_matrix:

print(res)`

1 个答案:

答案 0 :(得分:0)

您可以使用列表推导来使用

生成res_matrix
res_matrix = [[0 for i in range(order)] for j in range(order)]

另外,你听说过numpy吗?它以简单快速的方式进行这种计算(以及更多)。这就是你的代码将成为numpy

import numpy as np

print("Generate 1st Matrix")
mat1 = np.random.randint(1, 10, size=(order, order))
print(mat1)

print("Generate 2nd Matrix")
mat2 = np.random.randint(1, 10, size=(order, order))
print(mat2)

res_matrix = mat1.dot(mat2)
print("Result of Matrix Multiplication.")
print(res_matrix)