NumPy Fromiter 函数

Beginner

介绍

在本实验中,我们将介绍 NumPy 的 fromiter() 函数,该函数用于通过 Python 可迭代对象创建 ndarray。我们将解释该函数的语法、参数和返回值,并提供一个代码示例。

虚拟机提示

虚拟机启动完成后,点击左上角切换到 Notebook 标签页,以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,随时可以向 Labby 提问。实验结束后请提供反馈,我们将及时为你解决问题。

导入 NumPy 库

我们首先通过以下代码导入 NumPy 库:

import numpy as np

在这里,np 是 NumPy 库的别名,我们将在代码中一直使用它。

创建 Python 可迭代对象

在这一步中,我们创建一个 Python 可迭代对象,稍后将用于创建 ndarray。我们可以创建任何可迭代对象,包括列表、元组和生成器。在本示例中,我们创建一个整数列表:

a = [0, 2, 4, 9, 10, 8]

使用 fromiter() 函数创建 ndarray

现在我们可以使用 fromiter() 函数创建 ndarray,代码如下:

it = iter(a)
x = np.fromiter(it, dtype=float)

在这里,我们首先将可迭代对象 a 传递给 iter() 函数以创建迭代器对象 it。然后,将此迭代器对象与希望创建的数组数据类型(在本例中为 float)一起传递给 fromiter() 函数。

显示输出结果

我们可以使用以下代码显示输出数组及其数据类型:

print("The output array is :")
print(x)
print("The type of output array is:")
print(type(x))

在这里,我们首先打印输出数组,然后打印其数据类型。

指定读取的项目数量

需要注意的是,我们可以通过指定 count 参数来提高 fromiter() 函数的性能。此参数允许 fromiter() 函数预先分配输出数组,而不是按需调整其大小。count 参数表示从数组缓冲区中读取的项目数量。我们可以按如下方式指定 count 参数:

x = np.fromiter(a, dtype=float, count=len(a))

在这里,我们传递可迭代对象 a,同时指定数据类型为 float,并将项目数量设置为 len(a)

总结

在本实验中,我们介绍了 NumPy 的 fromiter() 函数,该函数用于通过 Python 可迭代对象创建 ndarray。我们解释了该函数的语法、参数和返回值。同时,我们还提供了一个代码示例,演示了如何使用该函数创建数组。通过遵循本实验中的步骤,你现在应该对如何在 NumPy 中使用 fromiter() 函数有了较好的理解。