4.编写一个自定义函数,参数为一个二维列表,返回值则为其转置矩阵。编写程序,输入一个二维列表,调用该自定义函数,将矩阵转置后按行输出,并且每个元素的输出宽度为5位,右对齐。
时间: 2023-06-12 22:07:03 浏览: 170
以下是自定义函数transpose_matrix的实现:
```python
def transpose_matrix(matrix):
rows = len(matrix)
cols = len(matrix[0])
transposed_matrix = []
for j in range(cols):
transposed_row = []
for i in range(rows):
transposed_row.append(matrix[i][j])
transposed_matrix.append(transposed_row)
return transposed_matrix
```
该函数接受一个二维列表作为输入参数,返回其转置矩阵。
以下是主程序的实现:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
transposed_matrix = transpose_matrix(matrix)
for row in transposed_matrix:
for element in row:
print('{:5d}'.format(element), end='')
print()
```
该程序先定义一个二维列表matrix,然后调用自定义函数transpose_matrix将其转置。最后按行输出转置矩阵,每个元素的输出宽度为5位,右对齐。输出结果如下:
```
1 4 7
2 5 8
3 6 9
```
阅读全文