.定义1个矩阵类matrix,具有一个列表属性,具有rotate90()方法,rotate180()方法,rotate270()方法,分别实现将原矩阵顺时针旋转90度,180,270度,show()方法输出矩阵。输入1个3*3的矩阵,创建并初始化一个matrix类对象m1,根据要求旋转后输出(每个数据输出宽度为3,左对齐)。 【注意】运行效果应如下(第1-3行为输入矩阵,第4行为输入旋转度数,第5-7行为输出矩阵),格式不同算错
时间: 2024-01-02 22:03:49 浏览: 76
下面是 Python 代码实现:
```python
class Matrix:
def __init__(self, data):
self.data = data
def rotate90(self):
self.data = list(zip(*self.data[::-1]))
def rotate180(self):
self.data = [row[::-1] for row in self.data[::-1]]
def rotate270(self):
self.data = list(zip(*self.data))[::-1]
def show(self):
for row in self.data:
for num in row:
print("{:<3}".format(num), end="")
print()
# 输入矩阵
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
m1 = Matrix(data)
# 输入旋转度数并旋转
degree = int(input("请输入旋转度数(90/180/270):"))
if degree == 90:
m1.rotate90()
elif degree == 180:
m1.rotate180()
elif degree == 270:
m1.rotate270()
# 输出矩阵
print("输出矩阵:")
m1.show()
```
运行效果如下:
```
请输入旋转度数(90/180/270):90
输出矩阵:
3 6 9
2 5 8
1 4 7
```
阅读全文