实现一个矩阵类,可以实现矩阵的乘法。
时间: 2024-05-09 17:18:49 浏览: 48
以下是一个简单的矩阵类实现示例,可以实现矩阵的乘法:
```python
class Matrix:
def __init__(self, matrix):
self.matrix = matrix
def __mul__(self, other):
if len(self.matrix[0]) != len(other.matrix):
raise ValueError('Matrices cannot be multiplied')
result = []
for i in range(len(self.matrix)):
row = []
for j in range(len(other.matrix[0])):
sum = 0
for k in range(len(other.matrix)):
sum += self.matrix[i][k] * other.matrix[k][j]
row.append(sum)
result.append(row)
return Matrix(result)
def __str__(self):
return '\n'.join([' '.join([str(elem) for elem in row]) for row in self.matrix])
```
这个类有一个构造函数,接受一个二维数组作为其矩阵的输入。它还有一个__mul__方法,用于实现矩阵乘法。它使用三个嵌套循环来计算结果矩阵的每个元素,并将其存储在一个新的矩阵对象中。如果两个矩阵的维度不兼容,则会引发一个ValueError异常。该类还具有一个__str__方法,用于将矩阵以字符串格式打印出来。
阅读全文