我在两个矩阵相乘时遇到了一些麻烦。当我尝试执行加法部分时,出现一个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__'
我尝试在另一个名为example m3的实例中保存新矩阵,但我认为使用self会更好。在
我的代码是:
^{2}$我在main()中创建了self的实例,然后调用multiplyMaterials()
根据
AttributeError
,您从未在类中定义__getitem__
方法。This是如何控制对象[key]访问的。如果您决定在python中创建一个更高级的类(比如这个类),我建议您阅读python data model。尽管将两个其他矩阵的乘法存储在self中有点奇怪。我可能只需要在方法中创建一个新的矩阵并返回它。在相关问题 更多 >
编程相关推荐