Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 矩阵乘法_Python 3.x_For Loop - Fatal编程技术网

Python 3.x 矩阵乘法

Python 3.x 矩阵乘法,python-3.x,for-loop,Python 3.x,For Loop,我在尝试乘法矩阵时遇到了下面的代码,有人能帮我理解第二个“for”循环的逻辑吗?为什么它是范围(len(B[0])。我是编程界的新手,无法理解其中的逻辑。请帮忙 for i in range(r1): print("i=",i) for j in range(len(B[0])): print("j=",j) for k in range(r2): print("k=&

我在尝试乘法矩阵时遇到了下面的代码,有人能帮我理解第二个“for”循环的逻辑吗?为什么它是范围(len(B[0])。我是编程界的新手,无法理解其中的逻辑。请帮忙

for i in range(r1): 
    print("i=",i)
    for j in range(len(B[0])): 
        print("j=",j)
        for k in range(r2): 
            print("k=",k)
            result[i][j] += A[i][k] * B[k][j]
return(result)

这里r1和r2是两个矩阵的长度

进行矩阵乘法的简单方法是使用numpy点积:

import numpy as np
result = np.dot([[2, 5], [5, 8]],[[2, 1], [5, 9]])
#result = np.dot(matrix1, matrix2)

B是上面代码中未定义的列表类型。在第二个“for循环”中,循环在列表“B”的第一个元素(称为B[0])中存在的子元素的#之间迭代