python 二维数组转置
时间: 2023-06-22 10:35:19 浏览: 116
在Python中,可以使用列表嵌套来表示二维数组,转置二维数组可以通过以下代码实现:
```python
# 定义一个二维数组
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 原矩阵的行数
rows = len(arr)
# 原矩阵的列数
cols = len(arr[0])
# 定义一个新的二维数组,用于存储转置后的矩阵
new_arr = [[0 for i in range(rows)] for j in range(cols)]
# 通过两层循环遍历原矩阵,将元素赋值给新矩阵的对应位置
for i in range(rows):
for j in range(cols):
new_arr[j][i] = arr[i][j]
# 输出转置后的矩阵
for i in range(cols):
for j in range(rows):
print(new_arr[i][j], end=" ")
print()
```
输出结果为:
```
1 4 7
2 5 8
3 6 9
```
上述代码中,我们首先定义了一个二维数组 `arr`,接着使用 `len()` 函数获取该矩阵的行数和列数。然后,我们定义一个新的二维数组 `new_arr`,并使用两层循环遍历原矩阵,将元素赋值给新矩阵的对应位置。最后,我们使用两层循环输出转置后的矩阵。
相关问题
python二维数组转置
在Python中,可以使用numpy库中的transpose函数来实现二维数组的转置。下面是一个示例代码:
```python
import numpy as np
# 定义一个二维数组
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 转置数组
transpose_arr = np.transpose(arr)
# 输出转置后的数组
print(transpose_arr)
```
输出结果为:
```
[[1 4 7]
[2 5 8]
[3 6 9]]
```
除了使用numpy库中的transpose函数,还可以使用Python自带的zip函数实现二维数组的转置。下面是一个示例代码:
```python
# 定义一个二维数组
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 转置数组
transpose_arr = list(map(list, zip(*arr)))
# 输出转置后的数组
print(transpose_arr)
```
输出结果与上面的示例代码相同。
python一维数组转置
要将Python中的一维数组转置,可以使用numpy库中的transpose()函数。比如:
import numpy as np
a = np.array([1, 2, 3, 4, 5])
a = a.reshape((5, 1)) # 将一维数组变成二维数组
a_transpose = np.transpose(a) # 转置操作
print(a_transpose)
输出结果为:
[[1 2 3 4 5]]
阅读全文