用python写一个函数,使给定的一个二维数组(3*3)转置,即行列互换
时间: 2024-02-21 10:00:25 浏览: 90
可以编写一个函数,使用嵌套列表表示二维数组,然后通过循环实现行列互换,并返回转置后的二维数组。以下是示例代码:
```python
def transpose(arr):
# 定义一个新的二维数组,用于存储转置后的结果
res = [[0 for j in range(3)] for i in range(3)]
# 行列互换
for i in range(3):
for j in range(3):
res[i][j] = arr[j][i]
# 返回转置后的二维数组
return res
```
你可以这样使用该函数:
```python
# 定义一个二维数组
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 打印原数组
print("原数组:")
for i in range(3):
for j in range(3):
print(arr[i][j], end=" ")
print()
# 调用函数进行转置
res = transpose(arr)
# 打印转置后的数组
print("转置后的数组:")
for i in range(3):
for j in range(3):
print(res[i][j], end=" ")
print()
```
输出:
```
原数组:
1 2 3
4 5 6
7 8 9
转置后的数组:
1 4 7
2 5 8
3 6 9
```
注意,由于Python中函数参数传递是引用传递,所以在函数内部修改数组的值也会影响到函数外部的数组。如果不希望影响到原数组,可以在函数内部先复制一份数组再进行操作。
阅读全文