Python numpy ndarray属性,索引,切片

1. ndarray属性

在Python中,数组是由NumPy库中的ndarray对象表示的。ndarray是具有相同类型的多维数组,是在NumPy中的定义。

1.1 数组维数

数组的维数是指数组中的轴数,可以使用数组的ndim属性查询数组的维数。如下所示:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(arr.ndim)

输出结果为:

2

1.2 数组形状

数组的形状是指每个维度中的大小,可以使用数组的shape属性查询数组的形状。如下所示:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(arr.shape)

输出结果为:

(2, 3)

上面的代码中,arr是一个2行3列的数组,因此它的形状为(2, 3)。

1.3 数组大小

数组的大小是指数组中包含的元素的个数,可以使用数组的size属性查询数组的大小。如下所示:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(arr.size)

输出结果为:

6

2. 数组索引

在NumPy中,我们可以使用索引来访问数组中的元素。索引是一个从0开始的整数。我们可以使用方括号中的索引来访问数组中的元素。

2.1 索引单独元素

要访问数组中单独的元素,可以使用方括号中的索引。索引是一个从0开始的整数,用于访问数组中的元素。如下所示:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr[0])

输出结果为:

1

2.2 索引多维数组

对于多维数组,可以使用多个索引来访问数组中的元素。如下所示:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 访问第二行第三列的元素

print(arr[1, 2])

输出结果为:

6

在上面的代码中,我们使用arr[1, 2]来访问数组中的第二行第三列的元素。

3. 数组切片

在NumPy中,我们可以使用切片来访问数组中的一部分。切片是一个表示从数组中取出一部分的方式。

3.1 切片单独维度的数组

对于单独维度的数组,我们可以使用切片来获取数组中的一部分。如下所示:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr[1:4])

输出结果为:

[2 3 4]

在上面的代码中,我们使用arr[1:4]来获取数组中索引1到3的元素。

3.2 切片多维数组

对于多维数组,我们可以使用切片来获取数组中的一部分。如下所示:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 切片获取第一行和第二行的前两列的元素

print(arr[:2, :2])

输出结果为:

[[1 2]

[4 5]]

在上面的代码中,我们使用arr[:2, :2]来获取数组中前两行前两列的元素。

后端开发标签