arr = np.arange(36).reshape(6,6) print(arr) #arr从第二列横向分割 #arr从第二行纵向分割,用函数分割
时间: 2024-09-12 22:06:50 浏览: 44
`numpy`是一个Python中的库,它提供了大量的数学函数以及用于高效运算大型多维数组和矩阵的功能。`np.arange`和`reshape`是`numpy`库中的两个函数:
- `np.arange`函数可以创建一个一维数组,其参数是一个等差数列的起始值、终止值(不包括终止值)和步长。
- `reshape`函数用于将数组重新塑形为指定的形状,不改变其数据。
下面是对您提供的代码片段的解释:
1. `arr = np.arange(36).reshape(6,6)` 创建了一个包含从0到35的一维数组,然后通过`reshape(6,6)`函数将其重新塑形成一个6行6列的二维数组。
2. `print(arr)` 打印了上述的二维数组,输出结果会是这样的:
```
[[ 0, 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10, 11],
[12, 13, 14, 15, 16, 17],
[18, 19, 20, 21, 22, 23],
[24, 25, 26, 27, 28, 29],
[30, 31, 32, 33, 34, 35]]
```
3. 接下来,我们需要从第二列横向分割,可以使用切片操作来实现,例如 `arr[:,1:]`,这会从第二列开始横向分割,结果是一个新的数组,不包含第一列。具体代码如下:
```python
slice_horizontal = arr[:,1:] # 从第二列横向分割
print(slice_horizontal)
```
4. 同理,我们也可以从第二行纵向分割,使用切片操作 `arr[1:,:]` 来实现,这会从第二行开始纵向分割,结果是一个新的数组,不包含第一行。具体代码如下:
```python
def slice_vertical(arr):
return arr[1:,:] # 从第二行纵向分割
# 使用函数进行纵向分割
slice_vertical_result = slice_vertical(arr)
print(slice_vertical_result)
```
阅读全文