NumPy数组的创建和索引

NumPy是一个用于数值计算的Python库,其中的核心数据结构是 ndarray ,代表多维数组。NumPy提供了多种方法来创建 ndarray 对象,包括使用 array() 函数、 zeros() ones() 函数、 EMPty() 函数,以及一些特殊函数。

使用 array() 函数是最常用的方法之一,它可以将Python列表、元组甚至其他数组转换为 ndarray 对象。语法为 ndarray = np.array(data, dtype=dtype, order=order) ,其中 data 可以是Python列表、元组或其他数组, dtype 指定数组元素的数据类型,默认为 float64 order 指定数组元素的内存存储顺序,默认为 C 顺序(行优先)。

示例:

import numpy as np

# 创建一维数组
arr1 = np.array([1, 2, 3, 4, 5])

# 创建二维数组
arr2 = np.array([[1, 2, 3], [4, 5, 6]])

# 创建三维数组
arr3 = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])

print(arr1)
print(arr2)
print(arr3)

输出:

[1 2 3 4 5]
[[1 2 3]
 [4 5 6]]
[[[ 1  2  3]
  [ 4  5  6]]
 [[ 7  8  9]
  [10 11 12]]]

另外, zeros() ones() 函数可以创建指定形状和数据类型的全零或全一数组。而 empty() 函数可以创建指定形状的空数组,但数组元素的值未定义。

NumPy还提供了一些特殊函数来创建特定类型的数组,例如: arange() linspace() eye() diag() 等。

在NumPy中,数组的索引从0开始。一维数组中的元素可以使用方括号 [] 并指定元素的索引进行访问。二维数组中的元素可以使用逗号分隔的两个索引:第一个索引表示行,第二个索引表示列。而对于三维及更高维数组,可以使用逗号分隔的多个索引来访问元素,每个索引表示相应维度的索引。NumPy还支持负索引,从数组的末尾开始计数。

示例:

import numpy as np

# 创建一维数组
arr = np.array([1, 2, 3, 4, 5])

# 访问第一个元素
print(arr[0])  # 输出:1

# 创建二维数组
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 访问第一行第一个元素
print(arr[0, 0])  # 输出:1

# 创建三维数组
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])

# 访问第一个数组的第二个数组的第三个元素
print(arr[0, 1, 2])  # 输出:6

练习:创建一个5x5的二维数组 arr ,并打印以下元素:第一行的第一个元素、第二行的最后一个元素、第三列的第一个元素、第三个元素。

为了方便其他设备和平台的伙伴观看往期文章,请关注微信公众号 Let us Coding 获取最新文章推送。

热门手游下载
下载排行榜