我需要与此javascript代码等效的代码:
var a = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]];
var b = [[6,8,3],[0,9,6],[1,8,4],[5,1,3]];
var r = [[0,0,0],[0,0,0],[0,0,0],[0,0,0]];
var rows=4;
var cols=3;
for(var i = 0; i < rows; i++){
for(var j = 0; j < cols; j++){
r[i][j] += a[i][j] * b[j][i];
}
}
所以我创建了以下Python代码:
a = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
b = [[6,8,3],[0,9,6],[1,8,4],[5,1,3]]
r = [[0,0,0],[0,0,0],[0,0,0],[0,0,0]]
rows=4
cols=3
for i in range(rows):
for j in range(cols):
r[i][j] += a[i][j] * b[j][i]
但是不幸的是,在Python中,这种方法似乎行不通,并且我的代码因IndexError: list index out of range
而崩溃
在行中
r[i][j] += a[i][j] * b[j][i]
为什么会这样?
答案 0 :(得分:0)
我认为,发生这种情况是因为您写了b[j][i]
,但正确的是b[i][j]
。