NumPy 数组创建

数组允许我们将多个值存储在单个数据结构中。

NumPy 数组类似于列表,但具有更快的速度和更高的内存效率等优点。

Numpy 库提供了各种处理数据的方法。为了利用所有这些功能,我们首先需要创建 numpy 数组。

有多种生成 NumPy 数组的技术,我们将在下面探讨其中的每一种。


使用 Python 列表创建数组

我们可以使用 Python 列表 创建 NumPy 数组。例如,

import numpy as np

# create a list named list1
list1 = [2, 4, 6, 8]

# create numpy array using list1
array1 = np.array(list1)

print(array1)

# Output: [2 4 6 8]

在上面的示例中,我们首先将 numpy 库导入为 np,并创建了一个名为 list1 的列表。请注意代码

array1 = np.array(list1)

在这里,我们通过将 list1 作为参数传递给 np.array() 函数来创建了一个数组。

我们不必创建列表并使用列表变量和 np.array() 函数,而是可以直接将列表元素作为参数传递。例如,

import numpy as np

# create numpy array using a list
array1 = np.array([2, 4, 6, 8])
print(array1)

# Output: [2  4  6 8]

此代码将产生与先前代码相同的输出。

注意:与列表不同,数组只能存储相似类型的数据。


使用 np.zeros() 创建数组

np.zeros() 函数允许我们创建一个包含所有零的数组。例如,

import numpy as np

# create an array with 4 elements filled with zeros
array1 = np.zeros(4)

print(array1)

# Output: [0. 0. 0. 0.]

在这里,我们使用 np.zeros(4) 函数创建了一个名为 array1 的数组,其中包含 4 个元素,所有元素都初始化为 0

注意:类似地,我们可以使用 np.ones() 创建一个包含值 1 的数组。


使用 np.arange() 创建数组

np.arange() 函数返回一个在指定区间内具有值的数组。例如,

import numpy as np

# create an array with values from 0 to 4
array1 = np.arange(5)

print("Using np.arange(5):", array1)

# create an array with values from 1 to 8 with a step of 2
array2 = np.arange(1, 9, 2)

print("Using np.arange(1, 9, 2):",array2)

输出

Using np.arange(5): [0 1 2 3 4]
Using np.arange(1, 9, 2): [1 3 5 7]

在上面的示例中,我们使用 np.arange() 函数创建了数组。

  • np.arange(5) - 创建一个包含 5 个元素的数组,其值范围从 04
  • np.arange(1, 9, 2) - 创建一个包含 5 个元素的数组,其值范围从 18,步长为 2

使用 np.random.rand() 创建数组

np.random.rand() 函数用于创建随机数数组。

让我们看一个创建包含 5 个随机数的数组的示例,

import numpy as np

# generate an array of 5 random numbers
array1 = np.random.rand(5)

print(array1)

输出

[0.08455648 0.56379034 0.66463204 0.97608605 0.30700052]
 

在上面的示例中,我们使用 np.random.rand() 函数创建了一个名为 array1 的数组,其中包含 5 个随机数。

此代码每次运行时都会生成不同的输出。


创建空的 NumPy 数组

要创建空的 NumPy 数组,我们使用 np.empty() 函数。例如,

import numpy as np

# create an empty array of length 4
array1 = np.empty(4)

print(array1)

输出

[1.47966080e-316 0.00000000e+000 9.06092203e-312 2.47218893e-253]

在这里,我们使用 np.empty() 函数创建了一个长度为 4 的空数组。

如果我们查看代码的输出,我们可以看到空数组实际上不是空的,它里面有一些值。

这是因为尽管我们创建了一个空数组,NumPy 仍会尝试为其添加一些值。数组中存储的值是任意的,没有实际意义。

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战