在将两个矩阵相乘时,我遇到了一些麻烦。尝试执行添加部分时出现AttributeError
Traceback (most recent call last):
File "MatrixClass.py", line 189, in <module>
main()
File "MatrixClass.py", line 184, in main
mat.multiplyMatrixes(mat1,mat2)
File "MatrixClass.py", line 176, in multiplyMatrixes
self[i][j] += (m1[i][k])*(m2[k][j])
AttributeError: matrix instance has no attribute '__getitem__'
我尝试将新矩阵保存在另一个名为 m3 的实例中,但我认为使用self会更好。
这是我的代码:
def multiplyMatrices(self,m1,m2):
if m1.getRows() == m2.getColumns() and m1.getColumns() == m2.getRows():
self.setRows()
self.setColumns()
for i in range(m1.getRows()):
for j in range(m2.getColumns()):
for k in range(m1.getColumns()):
self[i][j] += (m1[i][k])*(m2[k][j])
在调用multiplyMatrices()之前,我在main()中创建了 self 的实例